2015-12-22 30 views
3

我已经使用spring云配置文档为客户端以及服务器创建了演示。我使用git属性文件进行外部配置。如果我在外部配置文件中做了任何更改并刷新客户端,那么它的工作正常。但我不想每次刷新。我想让自己的客户端能够自动刷新。如何在春季云配置中配置客户端和服务器以使客户端自动刷新

我经历了春季文档,我认为我们可以通过以下方式来完成。

  1. 随着Redis的
  2. 帮助春云总线

哪一个是做正确的方式?

目前我正在尝试第一个与https://github.com/spring-cloud-samples/configserver/但它没有工作。

那么任何一个请解释我如何配置客户端和服务器,以便我们不需要刷新客户端?

我应该用春天的云巴士搬家吗?

回答

6

没有“正确”的方法。要监视配置服务器中的更改,您需要spring-cloud-config-monitor(或可用于独立应用程序)。它使用Spring Cloud Bus来广播更改事件,但您必须选择一个传输(因此Redis是一个有效的选择)。

您还需要监听客户端上的更改,因此如果在服务器上使用不同的传输器,请添加spring-cloud-starter-bus-redis(或amqpkafka等)。

通过Spring云巴士您联系当前要被挂接到监控变化和传播他们的样品在Redis的(这对依赖spring-cloud-config-monitorspring-cloud-starter-stream-redis开关):

<dependency> 
     <groupId>org.springframework.cloud</groupId> 
     <artifactId>spring-cloud-config-monitor</artifactId> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.cloud</groupId> 
     <artifactId>spring-cloud-starter-stream-redis</artifactId> 
    </dependency> 

为了虽然收到从GitHub的通知,您需要在您的github存储库中注册您的应用程序URL。该示例没有URL,因此未注册。如果您将其更改为使用基于文件的存储库(例如,本地git仓库),那么它将监视这些文件并且不需要挂钩。