我已配置spring cloud配置,从Github获取属性。如果我发布到/refresh
,我也可以在我的应用程序中获取更新的值。
现在我想让属性自动更新。这意味着我不想点击刷新API来将我的应用程序中反映的更改从Github属性文件传递到我的应用程序。
我是否需要为它实现Rabbitmq和云总线,还是有其他简单的方法可以实现它? 此外,文档说我们需要在spring-cloud-config-monitor库中添加依赖项以进行推送通知。 http://projects.spring.io/spring-cloud/spring-cloud.html#_push_notifications_and_spring_cloud_bus 但是我没有在maven中找到任何这样的依赖关系。不确定我的理解是否错误。请帮忙。
答案 0 :(得分:1)
您需要具有Spring Cloud Bus和RabbitMQ(或Kafka或Redis)支持的Config服务器。
RabbitMQ进行以下交流:
名称:springCloudBus
输入:主题
持久:true
autoDelete :false
内部:false
一旦从Git(Github,Bitbucket,GitLab)通过webhook接收推送事件到http://<config-server>/monitor
,配置服务器就会向主题发送数据使用Config和RabbitMQ库的客户端应用程序订阅了之前的交换,以接收需要刷新的属性的消息。
更多信息可以在我的博客中找到:http://tech.asimio.net/2017/02/02/Refreshable-Configuration-using-Spring-Cloud-Config-Server-Spring-Cloud-Bus-RabbitMQ-and-Git.html,其中简要说明了配置服务器和客户端应用的配置,日志和完整源代码。
答案 1 :(得分:0)
它们目前尚未提供。您需要将http://repo.spring.io/milestone/添加为maven存储库并使用里程碑版本。