Spring cloud 使用Spring配置服务时刷新Zuul配置

Spring cloud 使用Spring配置服务时刷新Zuul配置,spring-cloud,netflix-zuul,Spring Cloud,Netflix Zuul,我们部署了一个Zuul代理(封装了SpringCloud/Boot),用于从SpringConfig服务器获取配置。每次我更改路由时,我都会重新启动Zuul应用程序,我想知道是否有更好的方法可以采用(比如刷新Zuul配置信息)?:) 谢谢,您可以通过rest发出刷新命令: curl-X POST http://:/refresh 我编写了一个简单的bash脚本,将所有更改提交到Git存储库中的配置文件,然后向所有服务发出curl请求 如果你想玩得开心,你可以编写一个脚本,首先查询你的Eureka

我们部署了一个Zuul代理(封装了SpringCloud/Boot),用于从SpringConfig服务器获取配置。每次我更改路由时,我都会重新启动Zuul应用程序,我想知道是否有更好的方法可以采用(比如刷新Zuul配置信息)?:)


谢谢,

您可以通过rest发出刷新命令:

curl-X POST http://:/refresh

我编写了一个简单的bash脚本,将所有更改提交到Git存储库中的配置文件,然后向所有服务发出curl请求


如果你想玩得开心,你可以编写一个脚本,首先查询你的
Eureka
服务器以获取所有服务的列表,然后刷新它们:)

Zuul
例如,在
Git
后端配置路由时,可以动态刷新路由,前面是
springcloud
Config服务器和
springcloudbus

我在最近的一篇博客文章

中介绍了这种情况,Spring cloud config为#1引入了@RefreshScope注释,它将公开/refresh端点(通过HTTP或JMX)

对于#2,在“/refresh”之后,spring cloud config将采用最新的git提交,对于配置更改,基本上有两种方法,1)拉动更改2)推动更改,spring cloud bus方法基于rabbitmq来推动配置更改


许多职责(如github)都能够配置Webhook POST端点


除了前面提到的手动执行对/refresh端点的请求的方法外,您还可以配置github配置存储库,将/request端点用作webhook端点。通过这种方式,您可以在推送时自动刷新属性。

如果您想更新奇,可以使用Spring Cloud Bus将
环境更改事件
传播到所有连接的应用程序。此文档对您需要的内容进行了完美的解释