Ribbon
Spring Cloud的服务有两种消费者,Ribbon是其中之一,它是一个负载均衡客户端,可以很好的控制http和tcp的一些行为。
Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法,将Netflix的中间层服务连接在一起。Ribbon客户端组件提供一系列完善的配置项如连接超时,重试等。简单的说,就是在配置文件中列出Load Balancer(简称LB)后面所有的机器,Ribbon会自动的帮助你基于某种规则(如简单轮询,随即连接等)去连接这些机器。我们也很容易使用Ribbon实现自定义的负载均衡算法。
搭建消费者项目
首先我们运行我们之前运行好的eureka-server-demo和eureka-provider,我们在不同的端口上运行两个Eureka-Client,这样能更好的看出负载均衡的效果,我们需要修改eureka-provider的端口号及some.words,来更清楚的标识两个Client,一个项目要怎么样才能同时运行两次呢?如下图,只需要在运行时,把Single instace only去掉就好了。如下图所示:
在IDEA上点击Application右边的下三角
,弹出选项后,点击Edit Configuration
打开配置后,将默认的Single instance only(单实例)的钩去掉。