Spring Cloud Ribbon

服务调用Ribbon

   

   

Ribbon是一个基于HTTPTCP的客户端负载均衡工具,是Netflix公司开源的一个项目。

Ribbon定位是提供客户端的负载均衡算法。

   

Ribbon作用是提供客户端的负载均衡策略,

它可以让客户端在请求服务的时候自动进行负载均衡,

将请求分发到后端的服务器集群中。这样可以避免单一服务器过载,保证系统的可用性和稳定性

Ribbon支持多种负载均衡策略,如轮询、加权轮询、随机分配等。

   

总的来说,Ribbon是一个微服务架构中的重要组件,它的目的是提供客户端的负载均衡,以保证系统的可用性和稳定性。

Ribbon的简单使用

springcloud的启用顺序

  • 注册中心
  • 服务提供者
  • 消费者

   

ribbon负载均衡配置

   

客户端==服务消费者

服务端==服务提供者

Ribbon是一个客户端负载均衡工具,它的负载均衡算法是在客户端进行的,而不是在服务端。它的负载均衡策略是在客户端请求服务的时候自动执行的。

在使用Ribbon的情况下,客户端请求会被分发到一个服务器集群中,这个服务器集群中可以有多个服务器。Ribbon自动使用一种负载均衡策略,将请求分发到后端的服务器中,以保证请求的均衡性。

Ribbon支持多种负载均衡策略,如轮询、加权轮询、随机分配等,开发者可以根据自己的需求选择合适的负载均衡策略。

总的来说,Ribbon负载均衡的目的是通过分发请求,从而保证系统的可用性和稳定性,避免单一服务器的过载。

   

   

客户端与用户的联系通常是通过用户界面建立的。当用户在界面上请求某项服务时,客户端就会向服务提供者发起请求。客户端接收到服务提供者的响应后,再将结果呈现给用户。

例如,在一个在线购物网站中,当用户在网站上选择商品并点击"购买"按钮时,客户端就会向商品服务提供者请求相关信息。客户端接收到服务提供者的响应后,再将商品信息呈现给用户,让用户确认订单信息。

总的来说,客户端是实现用户和服务提供者之间通信的中间实体,它负责处理用户请求呈现结果给用户。

   

   

常用的负载均衡策略

常用的负载均衡策略有以下几种:

  • 轮询(Round Robin):按顺序将请求分配给每个服务器,直到所有服务器都得到请求,然后重新开始。
  • 最小连接数(Least Connections):将请求分配给当前连接数最少的服务器。
  • IP Hash:根据请求发送者的 IP 地址,将请求映射到相应的服务器。
  • 加权轮询(Weighted Round Robin):按照预先定义的权重,将请求分配给服务器。
  • 最小响应时间(Least Response Time):将请求分配给平均响应时间最短的服务器。
  • 最大连接数(Most Connections):将请求分配给当前连接数最多的服务器。
  • 加权最小连接数(Weighted Least Connections):将请求分配给权重与当前连接数乘积最小的服务器。

这些策略的选择取决于系统的特定需求和性能要求,因此具体的策略选择应根据实际情况灵活决策。

 

 

在消费者(客户端)springcloudconfig中配置

 

举例

   

/**

* 自定义轮询算法

* 忽略哪些短路的服务器,并选择并发数较低的服务器。

*

* @return

*/

@Bean

public IRule myRule() {

return new BestAvailableRule();

}

   

   

   

   

   

   

   

   

   

   

   

 

posted @   屠炉  阅读(31)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
点击右上角即可分享
微信分享提示
主题色彩