自从netflix的各个组件停止更新后,Springcloud alibaba借势发布了自己分布式全家桶,是目前最新也是功能更完善的分布式解决体系。
尚硅谷Springcloud第二季课堂笔记
我们可以看出,以往的分布式五大组件:Eureka、ribbon、Feign、Hystrix和Zuul,只剩下一个ribbon了,负载均衡这一块由于很多模块都集成了ribbon,也总是勿略,所以可以说以往的所有核心组件都gg了。
在Springcloud alibaba里面有非常重要的三大组件:
Nacos、sentinel 和 seata。
其中Nacos是对以往 Eureka,Config 和 Bus的一个集成,功能更加完善,还有简便的ui页面。而且是一个独立启动的一个服务。
sentinel是对Hystrix的一个替代,有更加易于操作的ui页面,可以直接在页面上对某个请求进行观察、跟踪、限流等控制,也是一个独立jar,可以直接java -jar 启动。
seate是解决分布式事务一致的问题,类似Spring里的事务控制,配置略显麻烦,但是使用十分简单,只需要在业务方法上加一个注解即可。
也是一个独立启动的服务。
springcloud alibaba的这三个核心组件都是独立出来的服务,网上下载并配置后启动就完事了,剩下你只用关注项目的配置、代码和业务即可,感觉就像一个个独立的应用,还有十分方便的ui界面,感觉相比以往老组件,耦合性更低,聚合性更强。
对于剩下的组件,openfeign和fegin几乎一样,用法也一样,都是面向接口调用服务,个人比较喜欢用openfeign。
ribbon除非你想要换负载均衡的算法,一般就忽略掉了,openfeign和nacos都集成了ribbon。
gateway是springcloud的自己的,和zuul一样,都是做反向代理的。
所以现在springcloud的项目包含五大组件有:
Nacos,sentinel,seata,gateway,openfegin。
网友评论