Spring Cloud 微服务开发:入门、进阶与源码剖析 —— 6.1 Spring Cloud Zuul 入门

6.1 Spring Cloud Zuul 入门

Zuul是Netflix开源的一个致力于“网关”解决方案的组件。自从2012年3月份以来,陆续发布了Zuul1.x和Zuul2.x版本,其中共计提交53个Release版本,后经由Pivotal公司发现并整合与Spring Cloud生态系统,也就是我们现在所说的Spring Cloud Zuul,主要应用于动态路由、监控、弹性、服务治理以及系统安全等方面。

6.1.1 Spring Cloud Zuul 概述

  1. 诞生背景

    基于本书前面的内容,已经可以搭建起一个简单的微服务系统,例如通过通过使用Spring Cloud Eureka 实现高可用的服务注册中心以及实现微服务的注册与发现;通过 Spring Cloud Ribbon 和 Feign 实现服务间负载均衡的接口调用;同时,为了使分布式系统更为健壮,对于依赖的服务调用使用 Spring Cloud Hystrix 进行包装,实现线程隔离并加入熔断机制,以避免在微服务架构中因个别服务出现异常而引起级联故障蔓延。可以实现类似如下架构图6-1:

    图6-1

    首先肯定的是,上面的架构实现系统功能完全没有问题,但我们进一步的思考,这样的架构是否还有不足的地方会使运维人员或开发人员感到痛苦。

    从运维角度来看,当客户端应用单击某个功能的时候往往会发出一些对微服务获取资源的请求到后端,这些请求通过F5、Nginx 等设施的路由和负载均衡分配后,被转发到各个不同的服务实例上。而为了让这些设施能够正确路由与分发请求,运维人员需要手工维护这些路由规则与服

猜你喜欢

转载自blog.csdn.net/meteor_93/article/details/104104567
今日推荐