概述
欢迎大家关注我的公众号【老周聊架构】,Java后端主流技术栈的原理、源码分析、架构以及各种互联网高并发、高性能、高可用的解决方案。
一、相同点
Dubbo 与 Feign 都依赖注册中心、负载均衡。
二、区别
1、协议
Dubbo:
- 支持多传输协议(Dubbo、Rmi、http、redis等等),可以根据业务场景选择最佳的方式。非常灵活。
- 默认的Dubbo协议:利用
Netty
,TCP
传输,单一、异步、长连接
,适合数据量小、高并发和服务提供者远远少于消费者的场景。
Feign:
基于Http
传输协议,短连接
,不适合高并发的访问。
2、负载均衡
Dubbo:
- 支持4种算法(随机、轮询、活跃度、Hash一致性),而且算法里面引入权重的概念。
- 配置的形式不仅支持代码配置,还支持Dubbo控制台灵活动态配置。
- 负载均衡的算法可以精准到某个服务接口的某个方法。
Feign:
- 只支持N种策略:轮询、随机、ResponseTime加权。
- 负载均衡算法是Client级别的。
3、容错策略
Dubbo:
支持多种容错策略:failover、failfast、brodecast、forking等,也引入了retry次数、timeout等配置参数。
Feign:
利用熔断机制来实现容错的,处理的方式不一样。
最后
以上就是飞快睫毛膏为你收集整理的远程调用 Dubbo 与 Feign 的区别的全部内容,希望文章能够帮你解决远程调用 Dubbo 与 Feign 的区别所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复