大家好,我是开源大叔!
微服务现在大家都很熟悉了,国内最常见的是 Spring Cloud Alibaba,今天给大家介绍腾讯开源的一站式微服务解决方案– Spring Cloud Tencent。
项目简介
Spring Cloud Tencent 主要提供了微服务领域常见的服务注册与发现、配置中心、服务路由、限流熔断、服务监控以及元数据链路透传能力。
功能介绍
1、服务注册与发现
服务注册发现是 SCT 核心功能,任何 Spring Cloud 应用都可以注册到 Polaris 服务端。
2、配置中心
通过反射的方式实现配置中心有动态刷新能力,性能更好。
3、服务路由
A 服务调用 B 服务时,先从注册中心获取全量 B 服务地址信息。没有服务路由,根据负载均衡算法从B服务列表中挑选一个地址进行调用。有了服务路由后,先从从全量服务地址中根据路由规则选取一批目标服务地址,再根据负载均衡算法挑选实例调用。
使用场景包括灰度发布、金丝雀发布、按机房收敛流量等。
4、服务限流
服务限流是服务自我保护措施的一种,SCT 支持服务级限流、 path 限流、请求头等参数级别限流。
限流规则支持按 QPS 快速失败或者匀速排队。
5、服务熔断
服务熔断是一种容错保护机制,SCT支持熔断策略包括故障比例熔断、连续故障熔断、熔断隔离时间。
项目使用
1、安装北极星服务端
官网测试环境:http://14.116.241.63:8080/
- 用户名:
polaris
- 密码:
polaris
2、搭建 Spring Cloud 项目, 添加 Spring Cloud Tencent 依赖
1 | <dependencyManagement> |
3、添加配置文件
1 | server: |
4、启动项目
项目注册成功!
5、服务调用
Spring Cloud 中可通过 RestTemplate
或者 Feign
发起服务调用。
1 | <dependency> |
1 |
|
项目地址
1 | https://github.com/Tencent/spring-cloud-tencent |
总结
Spring Cloud Tencent 相比于 Spring Cloud Alibaba 增加了服务路由功能,同时北极星平台中增加了熔断限流功能,对于使用者更友好,更多功能,感兴趣的同学赶快是试试吧~