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的依赖是:
但通常都不用单独添加这个依赖的,因为这个依赖已经包含在spring-cloud-starter-ribbon,无须再次引入。
在上篇博客《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版——电影售票系统<八>使用 Spring Sleuth 实现微服务追踪
- Spring Cloud版——电影售票系统<四>使用Hystrix实现微服务的容错处理
- Spring Cloud版——电影售票系统<三>使用Feign实现声明式REST调用
- SpringCloud(第 008 篇)电影微服务,使用 application.yml 配置文件配置 Ribbon 在客户端进行负载均衡调度算法
- springcloud使用ribbon实现客户端负载均衡
- 服务注册发现Eureka之三:Spring Cloud Ribbon实现客户端负载均衡(客户端负载均衡Ribbon之三:使用Ribbon实现客户端的均衡负载)
- Spring Cloud版——电影售票系统<七>使用 Zuul 构建微服务网关
- SpringCloud(第 006 篇)电影微服务,使用 Ribbon 在客户端进行负载均衡
- spring cloud学习(二)使用Ribbon实现客户端负载均衡
- SpringCloud(第 011 篇)电影Ribbon微服务,脱离Eureka使用配置listOfServers进行客户端负载均衡调度
- 使用Ribbon实现客户端负载均衡
- Spring Cloud版——电影售票系统<五>Hystrix使用消息中间件RabbitMQ收集数据
- SpringCloud(第 008 篇)电影微服务,使用 application.yml 配置文件配置 Ribbon 在客户端进行负载均衡调度算法
- spring cloud中使用Ribbon实现客户端的软负载均衡
- Spring Cloud版——电影售票系统<六>使用 Spring Cloud Config 统一管理微服务配置
- SpringCloud(第 008 篇)电影微服务,使用 application.yml 配置文件配置 Ribbon 在客户端进行负载均衡调度算法
- SpringCloud(第 006 篇)电影微服务,使用 Ribbon 在客户端进行负载均衡
- Python使用面向对象方式创建线程实现12306售票系统
- 使用tinymini210开发远程的温度监控系统,实现C#和安卓客户端显示数据和控制
- solr学习之路 摆脱solr页面客户端使用代码实现增删查改 <四>