作者 | 邓正威,廖春涛(春少),赵新(花名 于雨)
什么是 Polaris
Polaris 是腾讯开源的服务治理平台,致力于解决分布式和微服务架构中的服务管理、流量管理、配置管理、故障容错和可观测性问题,针对不同的技术栈和环境提供服务治理的标准方案和最佳实践。
什么是 dubbogo
Nacos(Zookeeper):解决服务管理、配置管理以及元数据管理 Sentinel:解决流量管理、故障容错 Prometheus、Skywalking:解决可观测性
从架构分层的维度,北极星 SDK,插件,与 dubbogo 之间通过以下方式进行整合:
服务管理 | 服务注册 | 已支持 |
服务发现 | 已支持 | |
健康检查 | 已支持 | |
流量管理 | 动态路由 | 已支持 |
负载均衡 | 即将支持 | |
访问限流 | 已支持 | |
故障容错 | 服务熔断 | 即将支持 |
节点熔断 | 即将支持 | |
配置管理 | 配置中心 | 即将支持 |
服务注册
服务发现
动态路由
消息类型 | dubbo消息内容 | 路由规则请求类型 |
消息头 | attachment | 请求头(HEADER) |
RPC方法 | method | 路径(PATH) |
假定一个场景,希望 uid 为 user-1 的请求,路由到版本为 2.0.0 的实例上,其他则路由到版本为 1.0.0 的实例上,那可以为 dubbogo 服务设置两条路由规则。
测试路由规则
兜底路由规则
访问限流
访问限流可以实现基于dubbo的请求消息内容来对请求进行访问限流,比如对 dubbogo 中的 GetUser 方法,对请求参数 Name 为 Alex 的请求进行限流,速率为10/s。
消息类型 | dubbo消息内容 | 路由规则请求类型 |
消息头 | attachment | 请求头(HEADER) |
RPC方法 | method | 路径(PATH) |
限流规则:
在 Polaris 配置限流规则后,需要在 dubbogo 中启用 Polaris 的 TpsLimiter,具体开启配置参考如下
注意:在使用 PolarisMesh 的动态路由能力时,需要先启用 PolarisMesh 在 dubbogo 中的注册发现功能
dubbogo.yaml 配置文件
作者介绍:
邓正威,apache/dubbo-go committer
廖春涛(春少),PolarisMesh 社区 PMC、apache/dubbo-go committer
赵新(花名 于雨),dubbo-go 社区负责人
附录:
Polaris 项目:https://github.com/polarismesh/polaris
dubbogo 项目:https://github.com/apache/dubbo-go
dubbogo polaris example:https://github.com/apache/dubbo-go-samples/tree/master/polaris
北极星服务注册文档:https://polarismesh.cn/docs/%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/%E6%8E%A7%E5%88%B6%E5%8F%B0%E4%BD%BF%E7%94%A8/%E6%B3%A8%E5%86%8C%E4%B8%AD%E5%BF%83/%E6%9C%8D%E5%8A%A1%E5%88%97%E8%A1%A8/
北极星访问限流文档:https://polarismesh.cn/docs/%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/%E6%8E%A7%E5%88%B6%E5%8F%B0%E4%BD%BF%E7%94%A8/%E6%9C%8D%E5%8A%A1%E7%BD%91%E6%A0%BC/%E8%AE%BF%E9%97%AE%E9%99%90%E6%B5%81/
北极星服务路由文档:https://polarismesh.cn/docs/%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97/%E6%8E%A7%E5%88%B6%E5%8F%B0%E4%BD%BF%E7%94%A8/%E6%9C%8D%E5%8A%A1%E7%BD%91%E6%A0%BC/%E5%8A%A8%E6%80%81%E8%B7%AF%E7%94%B1/
☞小米商城推出新功能:AI 帮你挑手机;Stack Overflow 临时封杀 ChatGPT;Meta 裁员再生事端|极客头条 ☞挑战 Google 搜索?OpenAI 发布最强 AI 对话系统 ChatGPT ☞AIGC , 超级热点 or 程序员创富新起点?
网友评论已有0条评论, 我也要评论