转载

基于 CSE 的微服务架构实践:Spring Cloud 技术栈选型

Spring Cloud技术栈用户选型建议 当Spring Cloud和CSE都构建于Spring Boot基础之上的时候,可以将CSE理解为竞争和替代性的产品。

基于 CSE 的微服务架构实践:Spring Cloud 技术栈选型

上图中展示了CSE和Spring Cloud 通常情况下 的一种开发组合。实际上, CSE Spring Cloud 都提供了非常良好的扩展性,它们能够使用的组件都不是完全互斥的,而是可以相互融合使用。比如在配置更新下发方面,CSE可以通过实现archaius的接口使用git作为配置中心,而Spring Cloud也可以通过实现PropertySources使用CSE的配置中心做动态配置。

Spring Cloud 应用快速上云,一般有两种选择:

  • 使用 Spring Cloud 物理多租引擎。 Spring Cloud 物理多租引擎集成了常用的中间件( Spring Cloud Config Spring Cloud Netflix 等),用户可以像本地使用这些中间件一样使用云上服务。

  • 将替换的功能迁移到 CSE 这里的原理和步骤可以参考 基于CSE的微服务架构实践-Spring Boot技术栈选型 。使用 CSE 的便利性在于开发者开发阶段不需要考虑集成和使用 Config Netflix Ribbon 等组件的使用, CSE 已经默认集成好了相关管控能力,并提供了配套的云上中间件。

项目

CSE

Spring Cloud

说明

服务注册 / 发现

服务中心

eureka, consul

配置管理

配置中心

git

熔断隔离降级(服务、方法级别)

bizkeeper, thread pool

Hystrix

CSE bizkeeper 也是基于 Hystrix 。但在技术选型的时候,不推荐 Hystrix ,大量产品的使用效果并不好。 CSE 内置了线程池隔离能力,这个应该是首选。

负载均衡、隔离重试(实例级别)

loadbalancer

Ribbon

调用链

tracing(zipkin) APM

zipkin

CSE APM 提供了无侵入埋点,使用 Handler 也实现了 zipkin 侵入式埋点。

网关

Edge Service

Spring Cloud Gateway

REST  客户端

RPC, RestTemplate

Feign, RestTemplate

上面表格列举了部分常见的组件和中间件, CSE Spring Cloud 都各自存在其他大量不一样的工具集合,以配套对应的框架进行更加高效的功能开发。在架构实践之后,会进一步分享工程实践方面的内容,敬请期待。

原文  https://mp.weixin.qq.com/s?__biz=MzUxNTEwNTg5Mg==&mid=2247486214&idx=1&sn=e4af154c5b4d249235ca7009f75d5bec&chksm=f9bafe0dcecd771bb4d3aed511aee6ebee147e966278f7e4433bcd5ce19e8f0402ad849d0d31&token=1517447353&lang=zh_CN
正文到此结束
Loading...