spring cloud 组件选型

spring cloud 组件使用

spring cloud 大家都知道,网上教程一大堆,各种原理和使用方法,但是搭建后全部融合在一起真正能跑起来的例子很少。而且随着分布式的发展,各种组件越来越多,要怎么搭配,我该用哪个?准备写一系列文章 来 使用各种不同的组件搭配项目,并且跑通,让大家下载可以直接学习或者参考

1、常用的注册中心就有 eureka,nacos, zookeeper,Consul ,etcd等
1.1 如果公司全面拥抱阿里的产品,例如考虑使用 spring cloud alibaba那套 不用说选 nacos,又或者说只用nacos做注册和配置中心也可以
1.2 如果使用原生的spring cloud 框架,且不考虑跨语言调用的情况下 推荐选eureka
1.3 如果公司存在跨语言通讯就选 zookeeper和Consul 至于这两个怎么选就得看语言之间的协商,怎么方便合适怎么来

2、常用配置中心有 spring cloud config, nacos, Apollo,Disconf
2.1 如果注册中心使用nacos 那注册中心不用说肯定 nacos
2.2 如果注册中心为其他的情况下 可以使用Apollo 和 config 这两个的怎么选?轻量选config 如果对配置细节把控较多选 Apollo
2.3 Disconf 这个是百度的配置中心,没用过,不评论。但是没更新了 自己看着办

3、网关有 zuul 、getaway
3.1 一般情况下都使用 getaway吧,毕竟性能要好

4、应用间的通讯 restTemplate,feignClient,dubbo, grpc 等等
4.1 feign 默认集成 ribbon,参数不灵活 restTemplte 参数灵活,需自己配负载均衡 怎么选看自己需要哪个
4.2 dubbo 内部调用效率会比 restTemplate,和feignClient高 走的rpc协议 看业务的需求,如果并发高,应用之间需要高效调用就用dubbo
4.3 grpc 是谷歌的一套跨语言通讯的解决方案,应用间也可以集成grpc,但是没必要,如果有跨语言的需求再用这个

5、分布式事务框架 LCN, Seata
5.1 tx-lcn 依赖redis 是本地事务协调,本身并不会产生事务
5.2 是两阶段提交事务,第一阶段解析业务sql并生成对应快照,第二阶段是提交/回滚,并删除快照
5.3 用哪个?如果用阿里那套就用Seata ,其他的话可以选择tx-lcn集成稍微简单点。

6、分布式锁 数据库锁,redis,zookeeper
6.1 数据库锁性能较差 尽量用redis 和 zookeeper

7、链路追踪组件 skywalking 、 Zipkin 、EagleEye 、Sleuth 、Pinpoint、CAT 等等(太多了)
7.1 skywalking 使用java探针字节码增加技术,实现对整个应用的监控
7.2 Zipkin 推特推出的分布式的跟踪系统
7.3 EagleEye 阿里推出的
7.4 Sleuth spring原生的链路跟踪解决方案,兼容支持了 zipkin
7.5 Pinpoint 韩国出的产品 使用java探针字节码增加技术,实现对整个应用的监控 跟skywalking 原理差不多
7.6 CAT 美团出的 通过代码埋点,拦截器,注解,过滤器等实现 对代码有入侵
7.7 怎么选?没有跨语言调用需求 推荐使用Zipkin 、Sleuth (如用阿里全套 可尝试使用EagleEye )等 有跨语言调用推荐使用 skywalking Pinpoint 至于 CAT 知道有这么个东西就行 个人推荐用 skywalking

以上都是个人观点,实际还得从自己的业务出发,选择适合项目的,才是最好的
可能还有一些组件没讲到,实在是太多了。然后这些组件很多又可以自由组合组成新的架构,后续会搭建测试项目,供大家下载
(已经上传了一些资源,目前资源还没审核通过。后续会加入链接)

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

a3280028

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值