Spring Cloud Alibaba 新版本发布:众多期待内容整合打包加入!
在Nacos 1.0.0 Release之后,Spring Cloud Alibaba也终于发布了最新的版本。该版本距离上一次发布,过去了整整4个月!下面就随我一起看看,这个大家期待已久的版本都有哪些内容值得我们关注。
版本变化
之前在《Spring Cloud Alibaba与Spring Boot、Spring Cloud之间不得不说的版本关系》一文中,我有提到过当前版本的Spring Cloud Alibaba还处于孵化器中,没有纳入Spring Cloud的主线版本。所以,我们在使用的时候需要明确Spring Boot、Spring Cloud主版本以及Spring Cloud Alibaba之间的版本关系。
这次的更新,在版本上与我之前文章中说的0.2.2来支持Greenwich有所区别。这里纠正一下,对于Greenwich版本的支持采用了0.9.x的版本号来对应,所以Spring Boot 、Spring Cloud、Spring Cloud Alibaba三者之间的准确关系如下表所示:
Spring Boot | Spring Cloud | Spring Cloud Alibaba |
---|---|---|
2.1.x | Greenwich | 0.9.x |
2.0.x | Finchley | 0.2.x |
1.5.x | Edgware | 0.1.x |
1.5.x | Dalston | 0.1.x |
模块新增
这次新版本中,最值得关注的应该就是下面这几个新模块的加入了。之前我说过非常看好Spring Cloud Alibaba,下面新增的几个模块就是主要原因之一。
spring-cloud-alibaba-dubbo
对于Dubbo的支持,我觉得对于国内用户来说,是非常有意义的。由于Dubbo在过去一段时间对国内行业的渗透非常广,至今依然有很多团队在使用着这个老牌RPC。但是,由于Dubbo只是一个单纯的RPC框架,它不像Spring Cloud这样,拥有不错的生态,在外围设施的对接支持上做了非常多的努力,使得我们在使用Spring Cloud的时候,可以很快的体系化我们的基础设施。
现在,Spring Cloud Alibaba将Dubbo融入Spring Cloud体系,可以让其一起享受Spring Cloud生态的各种便利。对于原来的Dubbo用户来说,该模块的加入为原Dubbo用户拥抱Spring Cloud生态提供了非常好的支持,可以大大减少用户自己融入需要做的扩展工作量。
为什么说这个模块好呢?看看下面几个与Spring Cloud生态融合的重要功能:
- 支持所有Spring Cloud的注册中心实现,包括Spring Cloud Alibaba中整合的Nacos。也就是说,以前我们自己在整合Spring Cloud和Dubbo来使用的时候,如果不去为Dubbo扩展注册中心,那么就不得不采用Eureka + Zookeeper同时存在的复杂架构。现在,在这个模块的帮助下,注册中心就可以得到统一。
- 支持RestTemplate,开发者只需要在定义RestTemplate的
@Bean
注解上搭配使用@DubboTransported
注解,就能将这个客户端直接支持Dubbo调用。 - 支持Feign,开发者只需要在
@FeignClient
注解上搭配使用@DubboTransported
,就能将Feign客户端变成Dubbo的客户端。这样的设计,对于传统Spring Cloud用户来说,是不是也非常容易接受呢?
如果您的团队还在坚持使用Dubbo,又很想引入Spring Cloud,那么不妨移步来尝试一下Spring Cloud Alibaba的最新版本吧!
注意:该模块没有发布到0.1.2中,所以只有0.2.2和0.9.0中才拥有。也就是说,仅支持Spring Boot 2.x和Spring Cloud Finchley版和Greenwich版。
spring-cloud-alibaba-seata
Seata是Alibaba与蚂蚁金融共建的一个开源分布式事务解决方案。通过该模块的加入,可以非常方便的在Spring MVC、RestTemplate、FeignClient的调用中传递事务上下文,同时也支持与Hystrix、Sentinel的联合使用。全方面的打通Spring Cloud生态的分布式事务场景。
这个框架我还没有深入的研究过,后续我也会将这部分内容的学习写到《Spring Cloud Alibaba基础教程》中与大家分享心得与经验。如果对这个感兴趣的,记得关注我哟。
spring-cloud-alibaba-sentinel-zuul
在该模块中定义了一些为Zuul定制的过滤器:SentinelPreFilter
、SentinelPostFilter
、SentinelErrorFilter
。通过它们来为Zuul实现网关层的请求流量控制。用户可以通过spring.cloud.sentinel.zuul.
参数来配置这些Sentinel过滤器。
spring-cloud-alibaba-sms
SMS是阿里云的商业化产品。所以该模块类之前的SchedulerX模块,OSS模块类似,主要为了更方便的整合使用而存在。如果是Spring Cloud用户,同时也是阿里云这些产品的用户,那么直接使用还是非常方便的。但是如果这两个条件都不满足,那么可以忽略之。
模块升级
在该版本中对于一些重要的基础设施模块也做了大幅度的版本升级,包括:
- Nacos:从0.6.2升级到1.0.0
- Sentinel:从1.4.0升级到1.5.2
对于模块功能升级主要与模块整合对象的自身版本有关,所以对于这部分的内容读者可以查阅Nacos 1.0.0的文档以及Sentinel 1.5.2的文档来进一步新增功能。
而对于Spring Cloud Alibaba对其整合新增的配置或注解使用,可以见本文参考资料链接看看更新了什么内容,这里就不做具体介绍了。
最后欢迎留言参与讨论,说说您对Spring Cloud Alibaba新版本的看法吧!
参考资料
专题推荐

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Java日志正确使用姿势
前言 关于日志,在大家的印象中都是比较简单的,只须引入了相关依赖包,剩下的事情就是在项目中“尽情”的打印我们需要的信息了。但是往往越简单的东西越容易让我们忽视,从而导致一些不该有的bug发生,作为一名严谨的程序员,怎么能让这种事情发生呢?所以下面我们就来了解一下关于日志的那些正确使用姿势。 正文 日志规范 命名 首先是日志文件的命名,尽量要做到见名知意,团队里面也必须使用统一的命名规范,不然“脏乱差”的日志文件会影响大家排查问题的效率。这里推荐以“projectName_logName_logType.log”来命名,这样通过名字就可以清晰的知道该日志文件是属于哪个项目,什么类型,有什么作用。例如在我们MessageServer项目中监控Rabbitmq 消费者相关的日志文件名可以定义成“messageserver_rabbitmqconsumer_monitor.log”。 保存时间 关于日志保存的时间,普通的日志文件建议保留15天,若比较重要的可根据实际情况延长,具体请参考各自服务器磁盘空间以及日志文件大小作出最优选择。 日志级别 常见的日志级别有以下: DEBUG级别:记录调试程...
- 下一篇
主流微服务注册中心浅析和对比
开源产品受开发者热捧,是因为其代码透明、可以参与共建、有社区进行交流和学习,当然更重要的是开源产品的接入成本低。个人开发者或者中小型公司往往会将开源产品作为选型首选。 开发者通过阅读源代码,理解产品的功能设计和架构设计,同时也可以通过本地部署来测试性能,随之而来的是对各类开源产品的对比,用以选型。不过当前关于微服务注册中心的对比,大多聚焦在功能上的对比,对架构或者性能的深入探讨,比较少见。 另一方面,作为默默支持的产品,服务注册中心往往隐藏在服务框架背后。优秀的服务框架往往会支持多种配置中心,但是注册中心的选择依然与服务框架强关联,普遍的情况是一种服务框架会带一个默认的服务注册中心。这样虽然免去了用户在选型上的烦恼,但是单个注册中心的局限性,导致用户使用多个服务框架时,必须部署多套完全不同的注册中心,这些注册中心之间的数据协同是一个问题。 本文来自Nacos社区,作者是 Nacos PMC 朱鹏飞,作者力求公正和客观的去看待主流微服务注册中心的各个维度。本文不仅仅包含常见服务注册中心产品的对比,也试图从Nacos的经验和调研中总结并阐述服务注册中心产品设计上应该去遵循和考虑的要点,文章...
相关文章
文章评论
共有0条评论来说两句吧...