dubbo负载均衡策略

dubbo负载均衡策略121212dubbo负载均衡策略RandomLoadBalance–随机负载均衡默认情况下,dubbo是RandomLoadBalance,随机调用实现负载均衡,可以对不同provider设置不同

大家好,又见面了,我是你们的朋友全栈君。

121212
dubbo负载均衡策略
RandomLoadBalance--随机负载均衡
默认情况下,dubbo是RandomLoadBalance,随机调用实现负载均衡,可以对不同provider设置不同的权重,会按照权重来进行负载均衡,权重越大分配流量分配越高,一般实用默认就可以。

RoundRobinLoadBalance--循环负载均衡
默认是均匀的将流量打到各个节点的机器上,但是如果各个机器的性能不一样,容易导致性能差的机器负载过高,所以需要调整权重,让性能差的机器承载权重小一些,流量少一些。

LeastActiveLoadBalance
最小活跃数负载均衡,活跃调用数越小,表明该服务提供者效率越高,单位时间内可处理更多的请求,那么此时请求会优先分配给该服务的提供者。
最小活跃数负载均衡算法的基本思想是:
每个服务提供者对应着一个活跃数,active。初始情况下,所有服务提供者的active都是0,每当收到一个请求,对应的服务提供者的active+1,处理完请求后,active-1.所以服务提供者性
能越好,处理请求的效率就越高,那么active也会下降的越快,那么可以给这样的服务提供者优先分配强求。
LeastActiveLoadBalance引入了权重,是基于加权最小活跃数算法。

ConsistentHashLoadBalance
一致性hash负载均衡算法,相同请求参数一定分发到一个provider上去,provider挂掉的时候,会基于虚拟节点均匀的分配剩余的流量,都懂不会太大,如果需要的不是随机负载均衡,是要一
类请求到一个节点,那就走一致性hash策略。

dubbo 集群容错策略

Failover Cluster 模式
失败自动切换,自动重试其他机器,默认就是这个,常见读操作。

Failfast Cluster 模式
一次调用失败就立即失败,常见于非幂等性的写操作,比如新增一条记录。

Failsafe Cluster 模式
出现异常时忽略掉,常用于不重要的接口调用,比如记录日志。

Failback Cluster 模式
失败后自动记录请求,然后定时重发,比较适合用于写消息队列。

Forking Cluster 模式
并行调用多个provider,只要又一个成功就立即返回,常用于实时性要求比较高的读操作,但是会浪费更多的服务资源,可通过“forks=2”来进行设置最大并行数

Broadcast Cluster 模式
逐个调用所有的provider,任何一个provider出错则报错,通常用于通知所有提供者更新缓存活着日志等本地资源信息。

dubbo动态代理策略
默认使用javassist动态字节码生成,创建代理类,但是可以通过spi扩展机制,配置自己的动态代理策略。


 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/154206.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • SVG图像技术摘要

    SVG图像技术摘要

    2022年1月9日
    46
  • 推荐他们认为有用Sublime Text3小工具

    推荐他们认为有用Sublime Text3小工具

    2022年1月7日
    40
  • iphone4s必装AppSync补丁教程使iOS5完全越狱[通俗易懂]

    iphone4s必装AppSync补丁教程使iOS5完全越狱[通俗易懂]iphone4s必装AppSync补丁教程使iOS5完全越狱2012-06-1719:44来源:未知一念之间我要评论大中小iPhone4等设备完美越狱终于发布,不过完美越狱完成后如果给iPhone上安装从iPhone中文网或者其他网站上下载ipa后缀格式的软件和游戏,还有一项重要的工作就是在CYIDIA上安装ipa补丁AppSync5.0+,下面就教大家怎样安装…

    2022年6月13日
    32
  • 如何成为大数据架构师_业务架构师和数据架构师

    如何成为大数据架构师_业务架构师和数据架构师要想成为架构师这几点你必须关注!架构不是一个职业而是一种能力,每一种架构师只不过是在不同的领域里面使用不同的技术,没有什么可对比,就好比如你问一个篮球明星和一个足球明星有什么区别一样!01架构师需要考虑四个问题1.确定系统干什么不干什么,也就是说系统的边界在哪里?2.确定架构内部的模块与模块之间的关系,以及模块与外部之间的关系是什么?3.架构确定以后,有能力去指导…

    2025年5月28日
    0
  • 解释spring框架中bean的生命周期_Spring bean的生命周期

    解释spring框架中bean的生命周期_Spring bean的生命周期该篇博客就来了解IoC容器下Bean的一生吧,也可以理解为bean的生命周期。首先你需要知道的知识在IoC容器启动之后,并不会马上就实例化相应的bean,此时容器仅仅拥有所有对象的BeanDefinition(BeanDefinition:是容器依赖某些工具加载的XML配置信息进行解析和分析,并将分析后的信息编组为相应的BeanDefinition)。只有当getBean()调…

    2022年9月18日
    0
  • (others)ICMP报文详解系列「建议收藏」

    (others)ICMP报文详解系列「建议收藏」Linuxicmp学习笔记之一icmp协议相关的格式分类: linux网络2014-04-1723:45 487人阅读 评论(0) 收藏 举报Linuxicmp功能分析之一 icmp协议相关的格式 ICMP协议是网络层中一个非常重要的协议,其全称为Internet Control Message Protocol(因特网控制报文协议

    2022年5月24日
    30

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号