您的位置:首页 > 编程语言 > Java开发

Spring Cloud版——电影售票系统<二>使用Ribbon实现客户端负载均衡

2017-09-03 00:00 686 查看
GitHub地址:https://github.com/leebingbin/SpringCloud.MovieTicketing

在上篇博客《Spring Cloud版——电影售票系统<—>微服务注册与发现》中,已经实现了微服务的注册与发现。启动各个微服务时,Eureka Client会把自己的网络信息注册到Eureka Server。然而,这样的架构依然有一些问题,比如负载均衡。一般来说,各个微服务都会部署多个实例。那么服务消费者要如何将请求分摊到多个服务者实例上呢?
一、Ribbon简介
Ribbon 是 Netflix 发布的负载均衡器,它有助与控制HTTP和TCP客户端的行为。为Ribbon配置服务提供者地址列表后,Ribbon就可基于某种负载均衡算法,自动地帮助服务消费者去请求。Ribbon 默认为我们提供了很多的负载均衡算法,例如轮询,随机等。当然,我们也可以为Ribbon实现自定义的负载均衡算法。
在Spring Cloud中,当Ribbon 和 Eureka 配合使用时, Ribbon可自动从Eureka Server获取服务提供者地址列表,并基于负载均衡算法,请求其中一个服务提供者实例。
Eureka 与 Ribbon 配合使用架构如下:

Tips:为项目引入Ribbon的依赖,Ribbon的依赖是:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-ribbon</artifactId>
</dependency>

但通常都不用单独添加这个依赖的,因为这个依赖已经包含在spring-cloud-starter-ribbon,无须再次引入。
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka</artifactId>
</dependency>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Spring Cloud Ribbon Eureka
相关文章推荐