背景
Spring Cloud Alibaba用的很爽。
但是对于腾讯系的来讲,就有点不那么友好了。
至于其中的关系,我想就不要再在这里赘述了。
因为Ali的全家桶很火,所以,腾讯也不可能置身事外。
所以腾讯顺势推出了自己的全家桶:spring-cloud-tencent
介绍
Spring Cloud Tencent 是腾讯开源的一站式微服务解决方案。
Spring Cloud Tencent 实现了Spring Cloud 标准微服务 SPI,开发者可以基于 Spring Cloud Tencent 快速开发 Spring Cloud 云原生分布式应用。
Spring Cloud Tencent 的核心依托腾讯开源的一站式服务发现与治理平台 Polaris,实现各种分布式微服务场景。
- Polaris Github home page
- Polaris official website
Spring Cloud Tencent提供的能力包括但不限于:
体验环境
- 管控台地址: Polaris控制台
- 账号:polaris
- 密码:polaris
- 控制面地址:
grpc://183.47.111.80:8091
spring-cloud-tencent-example
下 example 地址都默认指向了体验服务地址(grpc://183.47.111.80:8091
),如果您只是体验 Spring Cloud Tencent,可直接一键运行任何 example。
管控台
使用指南
Spring Cloud Tencent 所有组件都已上传到 Maven 中央仓库,只需要引入依赖即可。
例如:
-
快速开始
- Spring Cloud Tencent 版本管理
- Spring Cloud Tencent 服务注册与发现
- Spring Cloud Tencent 配置中心
- Spring Cloud Tencent 限流
- Spring Cloud Tencent 熔断
- Spring Cloud Tencent 服务路由
- Spring Cloud Tencent 标签传递
项目概览
1. pom 结构图
![](https://img.php1.cn/3cd4a/1eebe/cd5/60405fda58cd0acd.webp)
2. 模块依赖图
![](https://img.php1.cn/3cd4a/1eebe/cd5/e88efe5b0a13a7fa.webp)
2.1 模块说明
模块名 | 模块说明 |
---|
spring-cloud-tencent-commons | 所有模块的基础模块,定义最核心的工具类,数据模型 |
spring-cloud-tencent-polaris-context | polaris 的上下文模块,例如装载 polaris 服务的地址信息等。所有 polaris starter 都依赖此模块 |
spring-cloud-tencent-polaris-loadbalancer | polaris 的负载均衡模块,用于承载 polaris 的路由插件 |
spring-cloud-starter-tencent-metadata-transfer | 扩展 fegin 的能力,自动在链路上传递元信息。例如用于路由标签信息传递、tracer上下文信息传递等 |
spring-cloud-starter-tencent-polaris-discovery | 北极星的服务发现模块 |
spring-cloud-starter-tencent-polaris-ratelimit | 北极星的限流模块 |
spring-cloud-starter-tencent-polaris-circuitebreaker | 北极星的熔断模块 |
spring-cloud-starter-tencent-polaris-router | 北极星的路由模块 |
spring-cloud-starter-tencent-polaris-config | 北极星的配置中心模块 |
3. 目录结构
spring-cloud-tencent|-- pom.xml |-- spring-cloud-tencent-dependencies|-- spring-cloud-tencent-examples|-- spring-cloud-tencent-commons|-- spring-cloud-tencent-polaris-context|-- spring-cloud-tencent-polaris-loadbalancer|-- spring-cloud-starter-tencent-metadata-transfer|-- spring-cloud-starter-tencent-polaris-discovery|-- spring-cloud-starter-tencent-polaris-ratelimit|-- spring-cloud-starter-tencent-polaris-circuitbreaker|-- spring-cloud-starter-tencent-polaris-router|-- spring-cloud-starter-tencent-polaris-config
项目地址:
https://github.com/Tencent/spring-cloud-tencent
总结
项目现在还未被spring.io官网收录,看了下时间好像是2021年8月开源都第一版本。
看来要纳入到springcloud到官方组件中去,还有一段时间要走。。。
但是根据发布版本的效率来看,还是比较给力的,短短不到一年时间,更新版本多达28个+,同时这也说明,项目的稳定性方面还是有待确认。
但是对于走腾讯云的朋友来讲,在开发效率上来讲,可定有一定的提升(无论是性能还是开发效率方面来讲)。
同时对于各位CTO来讲,多了个可以选择的解决方案。(白发又要多一些了)
简单对比了下阿里巴巴的开放组件,多了个Router和Metadata Transfer。个人猜测应该是有兴趣的可以研究下(应该是用到了service Mesh的部分功能,纯属个人猜测)。
参考:https://github.com/Tencent/spring-cloud-tencent/blob/main/README-zh.md