《Apache Dubbo微服务开发从入门到精通》——基于规则的流量治理—— 一、 Dubbo流量治理体系概览(4) https://developer.aliyun.com/article/1224376
3. 如何给实例打标
当前,有两种方式可以在启动阶段为Dubbo实例指定标签,一种是之前提到的应用内配置的方式,如在xml文件中设置,应用打包部署后即自动被打标。
还有一种更灵活的方式,那就是通过读取所部署机器上的环境信息给应用打标,这样应用的标签就可以跟随实例动态的自动填充,避免的每次更换部署环境就重新打包应用镜像的问题。当前Dubbo能自动读取以下环境变量配置:
如果您有不同的实例环境保存机制,可以通过扩展InfraAdapter扩展点来自定义自己的标签加载方式。如果您的应用是部署在Kubernetes环境下,并且已经接入了服务网格体系,则也可以使用标准deployment标签的方式打标,具体请跟随Dubbo官网的服务网格示例学习。
4. 如何配置流量规则
Dubbo提供了控制台Dubbo Admin,帮助您可视化的下发流量管控规则,并实时监控规则生效情况。
Dubbo还提供了dubboctl命令行工具,前提也是需要有Dubbo Admin提前部署就绪,因为dubboctl是通过与Admin进行http通信完成规则下发的。
如果您使用的是如Istio的服务网格架构,还可以使用Istioctl、kubectl等下发Istio标准规则。
5. 接入服务网格
以上介绍的都是Dubbo体系内的流量治理规则,如果您对服务网格架构感兴趣,则可以将Dubbo服务接入服务网格体系,这样,您就可以使用服务网格提供的流量治理能力,如Istio体系的VirtualService等。
具体请参见使用服务网格规则。
6. 跟随示例学习
我们在Dubbo官网搭建了一个线上商城系统供您学习流量规则的具体使用。具体请参考Dubbo文档中的任务部分详情。