请教下ribbon和feign在cloud架构里边的位置,

程序员爱美食 2019-08-29 02:17:11
大佬,cloud新手,请教下ribbon和feign在cloud架构里边的位置是怎样的?网上看了很多还是有点模糊,feign继承了ribbon,为什么还需要用到ribbon呢?谢谢,看一篇帖子上说:有远程调用的时候,Ribbon会从Eureka注册表拉取下来的数据中挑选一台机器让Feign来发起远程调用,如果这样的话,是否可以理解为Ribbon为Feign调用指定服务器(以达到负载均衡的目的)?怎么不用Feign去直接做负载均衡呢?求解救!
...全文
859 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
为乐而来 2020-12-25
  • 打赏
  • 举报
回复
直接用Nginx。反正是没用过Ribbon
viewgroup 2020-12-25
  • 打赏
  • 举报
回复
2楼说的对,高内聚,低耦合,不是自己的事情不干
拾信 2020-12-25
  • 打赏
  • 举报
回复
听说是因为spring Cloud项目每一个模块都有自己范围内的业务,都会比较清晰,什么模块做什么,什么模块不做什么....
DayDayUp丶 2020-12-25
  • 打赏
  • 举报
回复
简单理解为Feign在Ribbon上包装了一层。
Ribbon可以直接单独使用,意思是可以不在SpringCloud服务中使用,这时候Ribbon+“服务地址管理”才能完成Ribbon的负载均衡,下面是单独使用的示例:https://blog.csdn.net/songzehao/article/details/101315206

而在SpringCloud中通常是直接使用Feign,使得“服务地址管理”可以通过Eureka等组件来配合完成,同时也使得跨服务调用更加简便,就像调用同一服务里的另一接口或另一Service一样。所以Feign更加自动化和简便,当然它的核心仍旧是Ribbon。
紫宇寰 2020-12-25
  • 打赏
  • 举报
回复
既然你提到了位置,我只能说,在新版中,ribbon和feign已经被cloud剔除掉了
程序员爱美食 2019-08-29
  • 打赏
  • 举报
回复
自己顶个!!!

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧