Zuul 内部通过 Ribbon 实现的负载均衡。
初次接触,不需要了解太多,还是老办法,上 demo。
本文涉及的 demo 是在 zuul 的第一课:[Spring Cloud] – Zuul 实践(一) – 基本使用 的基础上建立的,建议从第一课读起(直接看此文亦可,本文通俗易懂,老少皆宜)。
Zuul 的负载均衡是建立在 同一服务的多个实例 的前提下实现的,通俗点说,在 eureka server 中连接多个相同服务,是 Zuul 负载均衡的前提。
-
我们建立两个不同的工程,其中设置相同的 application.name。创建步骤该不赘述,请参考我的另一篇文档 [Spring Cloud] – Eureka 创建及使用 的创建 eureka client 的步骤。
注意:确定两个工程中配置文件的 spring.application.name 相同。spring: application: name: service1
- 将两个工程启动,查看 eureka server 中是否注册了两个相同的服务:(Availability Zones 的数字为 service 的副本数量)
- 此时若使用 zuul 访问 service1,zuul 会自动分发请求到这两个相同的 service。
以上就是基于 zuul 和 eureka 实现的最基本的负载均衡功能,是否很简单呢?