dubbo认识学习,原理介绍

Dubbo是阿里开源的分布式框架,使得应用可通过高新能的RPC(远程调用协议,通过网络从远程计算机上请求服务)实现服务的输出和输入功能,以及SOA(面向服务的架构)服务治理方案,和spring框架集成(通过spring加载dubbo的配置)。

其核心部分包含:
1. 远程通讯: 提供对多种基于长连接的NIO框架抽象封装,包括多种线程模型,序列化,以及“请求-响应”模式的信息交换方式。
2. 集群容错: 提供基于接口方法的透明远程过程调用,包括多协议支持,以及软负载均衡,失败容错,地址路由,动态配置等集群支持。
3. 自动发现: 基于注册中心目录服务,使服务消费方能动态的查找服务提供方,使地址透明,使服务提供方可以平滑增加或减少机器。

软负载均衡及容错机制:

负载均衡4种:

·        Random LoadBalance:随机策略,配置值为random。可以设置权重,有利于充分利用服务器的资源,高配的可以设置权重大一些,低配的可以稍微小一些

·        RoundRobin LoadBalance:轮询策略,配置值为roundrobin。

·        LeastActive LoadBalance:最少加载数策略,配置值为leastactive。根据请求调用的次数计数,处理请求更慢的节点会受到更少的请求

·        ConsistentHash LoadBalance:一致性Hash策略

容错模式有多种:

1、Failover Cluster模式 默认的模式选择,调用失败时,会自动切换,重新尝试调用其他节点上可用的服务。

·        2、Failfast Cluster模式:快速失败模式,调用只执行一次,失败则立即报错。可用于交易系统

·        3、Failsalf cluster  失败安全,出现异常,直接忽略

·        4、Failback cluster 失败恢复,后台记录,定时重发。

·        5、forKing cluster 并行调用,就是同时调用所有,只要成功返回一个即可。

·        6、broadcast cluster 逐个调用,任意一个报错则报错。

dubbo架构图:




====================================================

本文是在学习dubbo时自己的一些总结,可能有错误的认识,有大神进来望指正。


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值