首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >面试题81:Dubbo是如何做系统交互的?支持哪些负载均衡策略?

面试题81:Dubbo是如何做系统交互的?支持哪些负载均衡策略?

作者头像
爪哇缪斯
发布2023-05-10 09:40:02
发布2023-05-10 09:40:02
2000
举报
文章被收录于专栏:爪哇缪斯爪哇缪斯

【Dubbo是如何做系统交互的?】

  • Dubbo底层是通过RPC来完成服务和服务之间的调用的;Dubbo支持很多协议,比如:默认支持的dubbo协议、http协议、Rest协议等等,他们的底层所使用的技术是不太一样的,比如:dubbo协议底层使用的是netty,也可以使用mina,http协议底层使用的tomcat或jetty。
  • 服务消费者在调用某个服务时,会将当前所调用的服务接口信息、当前方法信息、执行方法所传入的入参信息等封装为一个invocation对象,然后不同的协议通过不同的数据组织方式和传输方式,将这个对象信息传送给服务提供者,服务提供者接收到这个对象信息后,找到对应的服务实现,利用反射执行对应的方法,得到方法结果后,再通过网格响应给服务消费者。
  • Dubbo在调用过程中还做了很多其他的设计,比如:服务容错、负载均衡、Filter机制、动态路由机制等等,让Dubbo能够处理更多企业中的需求。

【Dubbo支持哪些负载均衡策略?】

  • 随机 从多个服务提供者随机选择一个来处理本次请求,调用量越大则分布越均匀,并支持按权重设置随机概率。
  • 轮询 依次选择服务提供者来处理请求, 并支持按权重进行轮询,底层采用的是平滑加权轮询算法。
  • 最小活跃调用数 统计服务提供者当前正在处理的请求,下次请求过来则交给活跃数最小的服务器来处理。
  • 一致性哈希 相同参数的请求总是发到同一个服务提供者。
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-10-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 爪哇缪斯 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档