2019年Spring Cloud框架何去何从
Spring Cloud团队废弃了一些框架:
Greenwich版本开始,大部分Netflix OSS(Netflix open source service)进入维护模式。包括Archaius, Hystrix, Ribbon和Zuul。这意味着这些框架今后只会修复bug和安全问题,而不会开发新特性。
Netflix不再开发Ribbon和Hystrix。Zuul的命运有些不同,Netflix在2018年5月发布Zuul 2,新版本的Zuul基于Netty,包括了一些性能提高和新的特性。尽管如此,Spring Cloud团队还是放弃了Zuul模块的开发,转向研发自家新模块–Spring Cloud Gateway。
寻找Eureka的替代品
Spring Cloud支持一系列除Eureka之外的服务发现框架:Zookeeper,Consul,Alibaba Nacos,Kubernate。我觉得HashiCorp的Consul是其中的佼佼者。HashiCorp Consul是一个服务网格,用于服务发现、运行时配置和微服务应用程序和基础设施的服务分割。
Consul是由HashiCorp维护和开发。它是HashiCorp的生态系统的一环,其他包括Vault、Nomad、Terraform。与Eureka不同,Consul不仅能用作服务发现,还能做微服务架构的配置服务器。
如果用Eureka,那么需要用上Spring Cloud Config或者Netflix Archaius,而如果用Consul,那么不需要这2个配置中心,因为Consul也可以用作配置中心。
结论:
所以以后Spring Cloud开发最新组合可以是:
Consul + Loadbalancer + Spring Cloud Gateway
而不是:
Eureka + Spring Cloud Config + Ribbon + Zuul