最近在项目中需要用整套的SpringCoud,使用过程中发现还是的细细研究才能用好。
这两天是应为Zuul 使用中有些疑问,结合官网所说,看看怎么用好这东西。说Zuul之前还得弄明白Netflix 相关的一些玩意。然后看了半天,好吧,还是得从头说起SpringBoot才能用好,那就先不管Zuul了,SpringCloud 分布式架构中Netflix相关的都是基本也是核心。
先看看官网是怎么说Netflix的:
Spring Cloud Netflix通过自动配置和绑定到Spring Environment和其他Spring编程模型成语,为Spring Boot应用程序提供了Netflix OSS集成。 通过一些简单的注解,您可以快速启用和配置应用程序内的通用模式,并使用经过测试的Netflix组件构建大型分布式系统。 提供的模块包括服务发现(Eureka),断路器(Hystrix),智能路由(Zuul)和客户端负载平衡(Ribbon)。
好,到此我查官网的目的是,在大型分布式系统中Zuul应该如何工作,它应该具备的职责是什么。
再看看这玩意的特点:
Spring Cloud Netflix的特点:
服务发现:可以注册Eureka实例,客户端可以使用Spring管理的bean发现实例
服务发现:可以使用声明式Java配置创建嵌入式Eureka服务器
断路器:Hystrix客户端可以使用简单的注释驱动方法修饰器来构建
断路器:嵌入式Hystrix仪表板,带有声明式Java配置
声明式REST客户端:Feign创建一个使用JAX-RS或Spring MVC注释装饰的界面的动态实现
客户端负载均衡器:功能区
外部配置:从Spring环境到Archaius的桥梁(支持使用Spring Boot约定对Netflix组件进行本地配置)
路由器和过滤器:Zuul过滤器的自动注册,以及一种简单的约定配置方法来反向代理创建
好吧官网就是官网,很官话。
在搭建整个SpringCloud 分布式框架时,第一个应该是 “服务发现”也就是“Eureka Server” 这个东东,
我们这些可怜的工程师渣渣们没日没夜写的服务都需要注册到“Eureka Server”上才能在服务集群中让其它服务或是调用客户端使用。
下一章节 说 Eureka Server”