使用Zookeeper做爲配置中心,實現配置的修改和自動下發,基於Spriing Cloud咱們能夠輕鬆的實現。spring
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-zookeeper-config</artifactId> </dependency>
server.port=8082 spring.application.name=waiter-service spring.cloud.zookeeper.connect-string=localhost:2181 eureka.client.service-url.defaultZone=http://****:8761/eureka/
#默認的配置項,訂單折扣率 order.discount=95
/config/應⽤用名,profile/key=value
一、/config是根目錄
二、服務名是下一級目錄,這裏是waiter-service
三、配置的鍵和值對bootstrap
spring.cloud.zookeeper.config.root=config spring.cloud.zookeeper.config.default-context=application spring.cloud.zookeeper.config.profile-separator=','
一、建立根路徑/config
二、建立服務名路徑waiter-service
三、配置一個配置項order.discount = 30app
@ConfigurationProperties("order") @RefreshScope @Data @Component public class OrderProperties { private Integer discount = 100; private String waiterPrefix = "test-"; }
@RestController @RequestMapping("/coffee") @Slf4j public class CoffeeController { @Autowired private OrderProperties orderProperties; @PostMapping(path = "/getDiscount") @ResponseStatus(HttpStatus.CREATED) public String getDiscount() { return String.valueOf(orderProperties.getDiscount()); }