API接口服务的开发与优化(提升API服务的质量和可用性)
295
2022-11-08
Sentinel整合Apollo进行规则持久化
阅读文本大概需要3分钟。
上篇【 Apollo配置中心源码编译及搭建 】进行了Apollo配置中的源码搭建,这篇Sentinel整合Apollo进行规则持久化。上篇还有些地方可能说的不太明白。先来梳理一下,在进行Sentinel整合Apollo进行规则持久化。
在执行com.ctrip.framework.apollo.assembly.ApolloApplication时,进行了如图的配置
其实appollo_profile配置项的github对应application-github.properties配置文件
而application-github.properties的配置项如下
# DataSourcespring.datasource.url = ${spring_datasource_url}spring.datasource.username = ${spring_datasource_username}spring.datasource.password = ${spring_datasource_password}
所以这些启动参数使可以直接配置到application-github.properties配置文件的。
在执行com.ctrip.framework.apollo.portal.PortalApplication时,进行了如图的配置
dev_meta配置项最后覆盖
分别代表开发环境DEV、测试环境FAT、预生产UAT、生产PRO。
重要的几个项目
apollo-configservice:提供配置获取接口,提供配置更新推送接口,接口服务对象为Apollo客户端
apollo-adminservice:提供配置管理接口,提供配置修改、发布等接口,接口服务对象为Portal,以及Eureka
apollo-portal:提供Web界面供用户管理配置
apollo-client:Apollo提供的客户端程序,为应用提供配置获取、实时更新等功能
开始如何使用 Apollo 来配置规则进行持久化
0x01:修改pom.xml文件
将
0x02:java代码迁移
找到如下目录(位于test目录)
sentinel-dashboard/src/test/java/com/alibaba/csp/sentinel/dashboard/rule/apollo
将整个目录拷贝到
sentinel-dashboard/src/main/java/com/alibaba/csp/sentinel/dashboard/rule/apollo
修改com.alibaba.csp.sentinel.dashboard.controller.v2.FlowControllerV2.java
修改成
修改HTML页面
找到sidebar.html页面
sentinel-dashboard/src/main/webapp/resources/app/scripts/directives/sidebar.html并找到如下代码段后,并把注释放开
修改后
经过以上步骤就已经把流控规则改造成推模式持久化了。
下篇进行微服务改造,验证改造是否成功,敬请期待~~~~
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~