公司使用dubbo做为rpc框架,有必要简单学习一番(自己搭建),自己做下学习记录.

dubbo认识: dubbo是分布式SOA(面向服务)架构的rpc服务治理框架.可兼容各种rpc,强势的地方主要还是用于服务治理.目前阿里提供维护更新

服务治理:主要包括负载均衡和集群容错机制.

项目搭建部分:

环境:三台虚拟机zookeeper启动 ,idea ,maven ,tomcat

项目说明:官方提供简单的入门教程,官方之所以不用tomcat,我想一方面出于简单,另一方面因为本身rpc是基于netty容器(tcp级别),不需要依赖servlet容器

加上tomcat浪费资源.

整体来说还是比较简单的,这边的话,选用的是zookeeper作为注册中心,

(sh zkCli.sh timeout 5000 -server ip port   可以使用该命令查看节点,注意设置超时时间的大小,否则可能链接不上,默认时间比较小).

这边的话,感觉描叙起来很费劲,直接放链接

provider:http://git.gupaoedu.com/jinjian/dubboProvider

consumer:http://git.gupaoedu.com/jinjian/dubboConsumer

负载均衡:LoadBalance

1.Random(随机指定一台provid);2.RoundRobin(权重轮询);3.LeastActive(最少活跃度,服务性能快的优先);4ConsistentHash (一致hash,参数一致的调用相同的机器);

集群容错策略:

1.Failover Cluster(失败自动切换,配合retries);2,Failfast (快速失败,调一次失败就结束);3Failsafe(失败安全) ,4Failback(失败恢复定时重发) ,5.Forking(并行,有一个成功就返回) 6.Broadcast (逐个调用,有一个报错就返回)

补充:如果要在项目中实现软负载均衡,指定某台机器执行,可以把每个tomcat作为provider,这样的话,调用方作为consumer可以利用dubbo实现!

关于负载和容错详情,参考博客:https://blog.csdn.net/songjinbin/article/details/49455515

关于dubbo的基础知识可以参考:

https://www.cnblogs.com/linlinismine/p/7814521.html

https://blog.csdn.net/libo2158/article/details/79365991

dubbo 搭建以及使用笔记的更多相关文章

  1. 超详细,新手都能看懂 !使用SpringBoot+Dubbo 搭建一个简单的分布式服务

    来自:JavaGuide Github 地址:https://github.com/Snailclimb/springboot-integration-examples 目录: 使用 SpringBo ...

  2. 使用 SpringBoot+Dubbo 搭建一个简单分布式服务

    实战之前,先来看几个重要的概念 开始实战之前,我们先来简单的了解一下这样几个概念:Dubbo.RPC.分布式.由于本文的目的是带大家使用SpringBoot+Dubbo 搭建一个简单的分布式服务,所以 ...

  3. Dubbo+zookeeper搭建环境学习笔记

    Dubbo背景和简介 Dubbo开始于电商系统,因此在这里先从电商系统的演变讲起. 1.单一应用框架(ORM) 当网站流量很小时,只需一个应用,将所有功能如下单支付等都部署在一起,以减少部署节点和成本 ...

  4. linux —— 搭建网页项目笔记

    导读 本文笔记之用,记录在我在linux下搭建与开发网站时遇到的一些碎片知识,以备将来之需. 目录 数据库相关 1.数据库相关 1) ubuntu 16.04 LTS 下mysql 的安装与使用  安 ...

  5. 树莓派+花生棒+leanote搭建自己的笔记服务器

    背景 对于一个程序猿来说.女朋友可以(暂时)没有,但是不能没有一个很好的记笔记的应用.因为记笔记可以帮助自己积累学习提升自己.每一次回头看自己记得笔记,你都会有新的理解. 也许有人会说,用有道云啊,有 ...

  6. 本地Windows环境Dubbo搭建测试

    Dubbo介绍 Dubbo[]是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案. 其核心部分包含: 远程通讯: 提供对多种基于长连接的NIO框架抽象封装, ...

  7. dubbo 搭建开发环境

    本文是基于maven的,预先使用,先装maven. dubbo是一个分布式服务框架,提供一个SOA的解决方案.简单的说,dubbo就像在生产者和消费者中间架起了一座桥梁,使之能透明交互. 本文旨在搭建 ...

  8. Centos7下lamp环境搭建的小笔记

    刚刚把校赛弄完,赛前在环境搭建上花了蛮多时间,也正好记一下笔记 0.首先更新源 清华大学开源镜像站的源 https://mirrors.tuna.tsinghua.edu.cn/help/centos ...

  9. 自己搭建一个记笔记的环境记录(leanote)

    一直在找一个开源的记笔记的软件,偶然看到leanote.竟然还是开源的,还是国人开发的果断mark了.自己在电脑上搭建了一个挺好玩的.可以记录一些不给别人看的小秘密. 下面是步骤记录,当然可以到官网上 ...

随机推荐

  1. folly无锁队列,尝试添加新的函数(续)

    基于上一篇文章,dropHead取出节点后,删除节点,会出现内存访问的问题.按照这个逻辑,如果将移出的节点保存到一个无锁队列中,然后在需要节点的时候,从这个备用的无锁队列中取出节点,那么应该就可以避开 ...

  2. win10以上系统设定PPTP自动拨号

    :bohaorasdial adsl 123 123if not %errorlevel% == 0 goto :bohaoexit rasdial adsl 123 123 rasdial是开始拨号 ...

  3. imageLoader之介绍

    相信大家在学习以及实际开发中基本都会与网络数据打交道,而这其中一个非常影响用户体验的就是图片的缓存了,若是没有弄好图片缓存,用户体验会大大下降,总会出现卡顿情况,而这个问题尤其容易出现在ListVie ...

  4. Jmeter(二十五)Jmeter之系统函数

    都忘了Jmeter4.0已发布((*^▽^*))具体优化项还没体验,记录一下,传送门:http://jmeter.apache.org/download_jmeter.cgi Jmeter的系统函数已 ...

  5. [UE4]让机器人开枪射击

  6. [UE4]限制杀人信息的显示数量

  7. AnimationDrawable写贞动画,播放完毕停止在第一或最后一帧

    animation.stop();animation.selectDrawable(0);//只需要在停止的时候,设置下标为你想要的一帧就好了

  8. mysql 删除表 外键出错

    MySQL库中有俩表,table1和table2,相互关联,在删除表的时候出错: Cannot delete or update a parent row: a foreign key constra ...

  9. JQuery 删除子元素

    删除元素/内容 如需删除元素和内容,一般可使用以下两个 jQuery 方法: remove() - 删除被选元素(及其子元素) empty() - 从被选元素中删除子元素 $("#div1& ...

  10. linux设置服务器时间同步

    yum install -y rdate 服务器请设置 */5 * * * * /usr/bin/rdate -s time-b.nist.gov ubuntu 设定时区:dpkg-reconfigu ...