java高级培训:SpringCloud微服务架构中Ribbon的介绍

    Ribbon是什么?     Ribbon是一组基于NetflixRibbon的客户端负载平衡工具。     简而言之,Ribbon是Netflix发布的一个开源项目。它的主要功能是提供客户端软件负载平衡算法,并将Netflix的...

    Ribbon是什么?

    Ribbon是一组基于NetflixRibbon的客户端负载平衡工具。

    简而言之,Ribbon是Netflix发布的一个开源项目。它的主要功能是提供客户端软件负载平衡算法,并将Netflix的中间层服务连接在一起。功能区客户端组件提供了一系列完整的配置项,例如连接超时,重试等。

attachments-2020-10-0ar2WeXp5f7f2370bda0b.jpg

    简而言之,它是在配置文件中列出负载均衡器(简称LB)后面的所有计算机,Ribbon将根据特定规则(例如简单轮询,随机连接等)自动帮助您连接这些计算机。我们还可以轻松地使用Ribbon来实现自定义负载平衡算法。

    Ribbon能干什么?

    LB,即负载均衡(LoadBalance),在微服务或分布式集群中经常用的一种应用。

    负载平衡只是意味着将用户的请求平均分配给多个服务,以实现系统的HA。

    常见的负载平衡包括软件Nginx,LVS,硬件F5等。

    相应地,在中间件中,例如:dubbo和SpringCloud为我们提供了负载平衡,并且SpringCloud的负载平衡算法可以自定义。

    集中式LB:

    也就是说,在服务的使用者和提供者之间使用独立的LB工具(硬件,例如F5,或软件,例如nginx),并且该工具负责通过某种策略将访问请求转发给服务提供商。

    进程内LB:

    将LB逻辑集成到使用者。使用者从服务注册表中知道哪些地址可用,然后从这些地址中选择合适的服务器。

    Ribbon属于进程内LB,它只是一个类库,集成在使用者进程中,使用者使用它来获取服务提供者的地址。

推荐阅读:java高级培训:Spring Cloud微服务处理异常机制的差异?


如果你想了解更多关于java架构师的专业知识,可以加入JAVA架构师交流群:1037935907,里面都是同行,有资源分享包括但不限于(分布式架构、高可扩展、高性能、高并 发、Jvm性能调优、Spring,MyBatis,Nginx源码分析,Redis,ActiveMQ、、Mycat、Netty、Kafka、Mysql 、Zookeeper、Tomcat、Docker、Dubbo、Nginx)。欢迎一到五年的工程师加入,合理利用自己每一分每一秒的时间来学习提升自己,不要再用"没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代!

  • 发表于 2020-10-08 22:35
  • 阅读 ( 348 )
  • 分类:技术干货

0 条评论

请先 登录 后评论
JAVA Q&A
JAVA Q&A

173 篇文章

作家榜 »

  1. JAVA Q&A 173 文章
  2. 江南 1 文章
  3. 伯乐 0 文章
  4. 孤存 0 文章
  5. q21164340 0 文章
  6. 赫敏12 0 文章
  7. 子牙 0 文章
  8. 赫敏 0 文章