致力微服務 SpringCloud Alibab 篇二 nacos 配置中心

Nacos除了可以作爲服務註冊中心,它還有服務配置中心的功能。類似於consul config,Nacos 是支持熱加載的。

篇一的基礎繼續使用nacos作爲配置中心

引入依賴

  • 在需要統一管理配置的項目中添加對應依賴
<!-- nacos 配置 -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-alibaba-nacos-config</artifactId>
            <version>0.2.1.RELEASE</version>
        </dependency>
#應用名稱
spring.application.name=love-service-master
#服務器地址
server=127.0.0.1
#分組
group=DEV_GROUP

# Nacos 服務中心和配置中心地址
spring.cloud.nacos.discovery.server-addr=${server}:8848
spring.cloud.nacos.config.server-addr=${server}:8848

#需要加載外部配置,必須寫在bootstrap中
## Nacos 配置中心獲取配置文件 座標
spring.cloud.nacos.config.group=${group}
spring.cloud.nacos.config.prefix=love-service
spring.profiles.active=master
spring.cloud.nacos.config.file-extension=properties

    這裏沒有配置應用端口號,類似於這種具體應用的配置,稍後都寫到配置中心對應的配置文件中

  • nacos配置中心,添加編輯配置與bootstrap中對應座標一致

    新建配置

   

  • 熱加載

    寫一個Controller,在Controller上添加 @RefreshScope 實現配置的熱加載,先到上述配置中修改配置,添加username屬性

@Controller
@RefreshScope
public class ConfigController {
    @Value("${username}")
    private String username;

    @ResponseBody
    @RequestMapping("/getUsername")
    public String get() {
        return username;
    }
}

啓動工程,在瀏覽器上訪問localhost:8888/getUsername,可以返回在nacos控制檯上配置的username。在nacos 網頁上更改username的配置,在不重啓工程的情況下,重新訪問localhost:8888/getUsername,返回的事修改後的值,可見nacos作爲配置中心實現了熱加載功能。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章