Spring Cloud Netflix项目进入维护模式
这两年最热门的微服务化话题,Spring Cloud Netflix真可谓璀璨夺目。熟悉spring cloud的同学都知道下面张图,netflix公司的贡献非常大。不过最近2018-12-12日,Netflix宣布Spring Cloud Netflix系列技术栈进入维护模式(不再添加新特性),距离上次宣布Eureka 2.0闭源(Spring Cloud 还是在1.x 上面开发的,最新版本依赖
这两年最热门的微服务化话题,Spring Cloud Netflix真可谓璀璨夺目。熟悉spring cloud的同学都知道下面张图,netflix公司的贡献非常大。不过最近2018-12-12日,Netflix宣布Spring Cloud Netflix系列技术栈进入维护模式(不再添加新特性),距离上次宣布Eureka 2.0闭源(Spring Cloud 还是在1.x 上面开发的,最新版本依赖1.9.2)不到半年的光景。
Spring Cloud Netflix Projects Entering Maintenance Mode官方新闻:
Spring Cloud Netflix项目进入维护模式
最近,Netflix 宣布 Hystrix正在进入维护模式。自2016年以来,Ribbon已处于类似状态。虽然Hystrix和Ribbon现已处于维护模式,但它们仍然在Netflix大规模部署。
Hystrix Dashboard和Turbine已被Atlas取代。这些项目的最后一次提交别是2年和4年前。Zuul 1和Archaius 1都被后来不兼容的版本所取代。
以下Spring Cloud Netflix模块和相应的Starter将进入维护模式:
- spring-cloud-netflix-archaius
- spring-cloud-netflix-hystrix-contract
- spring-cloud-netflix-hystrix-dashboard
- spring-cloud-netflix-hystrix-stream
- spring-cloud-netflix-hystrix
- spring-cloud-netflix-ribbon
- spring-cloud-netflix-turbine-stream
- spring-cloud-netflix-turbine
- spring-cloud-netflix-zuul
这不包括Eureka或并发限制模块。
什么是维护模式?
将模块置于维护模式,意味着Spring Cloud团队将不会再向模块添加新功能。我们将修复block级别的bug以及安全问题,我们也会考虑并审查社区的小型pull request。
我们打算继续支持这些模块,直到 Greenwich release 被普遍采用至少一年。
替代品
我们建议对这些模块提供的功能进行以下替换
CURRENT REPLACEMENT Hystrix Resilience4j Hystrix Dashboard / Turbine Micrometer + Monitoring System Ribbon Spring Cloud Loadbalancer Zuul 1 Spring Cloud Gateway Archaius 1 Spring Boot external config + Spring Cloud Config 寻找关于Spring Cloud Loadbalancer的未来博客文章,并与新的Netflix项目Concurrency Limits集成。
这里补充说明一下
并发限制模块 | Netflix Concurrency Limits模块,它是Netflix开源的限流器项目,而Spring Cloud在Greenwich版本中引入spring-cloud-netflix-concurrency-limits。 |
Archaius 1 | 有些人对它可能比较陌生,也是Netflix公司开源项目,基于java的配置管理类库(apache common configuration类库的扩展),主要用于多配置存储的动态获取。它主要的特性:
使用方法及其简单,Getting Started |
Resilience4j | 目前还中孵化中,需持续关注spring-cloud-circuitbreaker。Spring可能是要抽象一个断路器的统一规范,让不同的断路器(Hystrix、Resilience4j、Sentinel)选择使用 |
Micrometer | Spring Boot 2中的Spring Boot Actuator底层用的就是Micrometer,它是Pivotal公司(也就是Spring所在的公司)开源的监控门面,类似于监控世界的Slf4j。Resilience4j自带整合了Micrometer! 目前还无法判断是否比Hystrix Dashboard /Turbine的更强大,更好用。 |
spring-cloud-loadbalancer | 目前还中孵化中,需持续关注spring-cloud-loadbalancer,使用上和Ribbon区别不大 |
Spring Cloud Gateway | 众所周知的原因(Zuul持续跳票1年多,1.x是一个基于阻塞io的API Gateway以及Servlet),直到2018-5 Zuul 2.x(基于Netty,也是非阻塞的,支持长连接)才发布,但Spring Cloud暂时还没有整合计划。 Spring Cloud Gateway比zuul 1.x系列的性能和功能整体要好。 |
Spring Boot external config + Spring Cloud Config | Netflix开源的组件(Archaius 1/Ribbon/Hystrix)都没有使用Spring Boot的规范(spring-boot-configuration-processor),根本没有metadata.json文件,于是这部分配置IDE无法给你提示 |
目前业界对Spring Cloud使用最广的就是Spring Cloud Netflix了。这意味着继续使用它再也没有新功能福利了,让人如何是好啊,不过我相信未来Spring Cloud的生态(替换品更多)会越来越好。
更多推荐
所有评论(0)