Spring 云配置 - 自动启用刷新端点和 Git 监控

Spring Cloud Configuration - auto-enable Refresh Endpoint & Git monitoring

问题

我开始学习Spring Cloud 从Spring Config 开始。有两个基本问题,因为我必须让我进入学习过程的下一步(继续通过 Consul 进行服务发现)。

  1. 如何自动启用 /refresh 端点到 POST 到?
  2. 有没有办法自动监控 Git 中的更新?

对于 #1,我实现了自己的 @RestController/@RequestMapping,但是我正在关注的教程中的 none 提到了这一点。我检查了我的 Maven 配置,它与示例提供的内容相匹配,但没有弹出。

我在这里找到了第二个问题的 post: spring cloud auto refresh config server property。我只是想知道自 2015 年 11 月以来是否有任何更新。

这两件事似乎都非常方便,并且会直接与我的 Consul 学习交织在一起,因为我可以自动将配置更新推送给注册为服务的每个人。一旦我到达那里,我也可以重新启动,但那是以后的事。

更新

我得到了#1 的答案。我在我的 Maven 模块中搞砸了我的依赖项配置。在对配置进行三次检查后,发现这只是飞行员的错误。不过,仍在处理 #2 - 如果有人有任何更新,我们将不胜感激。

对于 #1,Spring 云配置引入了 @RefreshScope 注释,它将公开 /refresh 端点(通过 HTTP 或 JMX)

对于 #2,在“/refresh”之后,spring 云配置将采用最新的 git 提交,对于配置更改,基本上有两种方法,1) 拉取更改 2 ) 推送更改,spring 云总线方法是基于 rabbitmq 推送配置更改。

参考

Refresh Scope

对于 GIT 更新,请尝试阅读此文档 spring-cloud-config-push-notifications 并且不要忘记安装 ngrock。此外,如果您只需要在 git 提交时刷新,那么您甚至不需要云总线项目,只需配置就足够了。希望这有帮助。