国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > Java > 正文

Spring Cloud Alibaba Nacos 入門詳解

2024-07-14 08:43:34
字體:
來源:轉載
供稿:網友

概覽

阿里巴巴在2018年7月份發布Nacos, Nacos是一個更易于構建云原生應用的動態服務發現、配置管理和服務管理平臺。并表示在6-8個月完成到生產可用的0.8版本,目前版本是0.9版本。

Nacos提供四大功能

服務發現和服務健康檢查

Nacos使服務更容易注冊自己并通過DNS或HTTP接口發現其他服務。Nacos還提供服務的實時健康檢查,以防止向不健康的主機或服務實例發送請求。

動態配置管理

動態配置服務允許您在所有環境中以集中和動態的方式管理所有服務的配置。Nacos消除了在更新配置時重新部署應用程序和服務的需要,這使配置更改更加高效和靈活。

動態DNS服務

動態 DNS 服務支持權重路由,讓您更容易地實現中間層負載均衡、更靈活的路由策略、流量控制以及數據中心內網的簡單DNS解析服務。動態DNS服務還能讓您更容易地實現以 DNS 協議為基礎的服務發現,以幫助您消除耦合到廠商私有服務發現 API 上的風險。

服務和元數據管理

Nacos提供易于使用的服務儀表板,可幫助您管理服務元數據,配置,kubernetes DNS,服務運行狀況和指標統計。

安裝

Nacos安裝可以采用如下兩種方式:

1.官網下載穩定版本解壓使用。

2.下載源代碼編譯使用,目前最新的版本是0.9.0版本。

本文使用第一種方式,到Nacos的穩定版本下載地址https://github.com/alibaba/nacos/releases,下載最新版,下載后解壓即安裝完成,然后進入解壓目錄后的bin目錄。

unzip nacos-server-0.9.0.zip或者tar -xvf nacos-server-0.9.0.tar.gz

進入解壓目錄后的bin目錄執行如下命令啟動Nacos。

#Linux/Unix/Mac 下sh startup.sh -m standalone#Windows 下cmd startup.cmd

啟動成功后,訪問Nacos服務,http://localhost:8848/nacos/#/login,默認情況用戶名密碼都是nacos,登錄頁如圖所示。

Spring,Cloud,Alibaba,Nacos

登錄后如圖所示。

Spring,Cloud,Alibaba,Nacos

SpringBoot 使用 Nacos 配置管理

創建一個springboot項目,主要代碼如下。

pom.xml

<dependency>  <groupId>com.alibaba.boot</groupId>  <artifactId>nacos-config-spring-boot-starter</artifactId>  <version>0.2.1</version></dependency>

application.yml

spring: application:  name: springcloud-nacos-hellonacos: config:  server-addr: 127.0.0.1:8848

配置說明:

  • spring.application.name:配置應用名。
  • nacos.config.server-addr:Nacos server 的地址。

啟動類

在啟動類,加入 @NacosPropertySource 注解其中包含兩個屬性,如下:

  • dataId:這個屬性是需要在Nacos中配置的Data Id。
  • autoRefreshed:為true的話開啟自動更新。

在使用Nacos做配置中心后,需要使用@NacosValue注解獲取配置,使用方式與@Value一樣,完整啟動類代碼如下所示。

@SpringBootApplication@NacosPropertySource(dataId = "springcloud-nacos-hello", autoRefreshed = true)@RestControllerpublic class SpringcloudNacosHelloApplication {  public static void main(String[] args) {    SpringApplication.run( SpringcloudNacosHelloApplication.class, args );  }  @NacosValue(value = "${test.properties.useLocalCache:false}", autoRefreshed = true)  private boolean useLocalCache;  @GetMapping("/get")  public boolean get(){    return useLocalCache;  }}

啟動應用,訪問http://localhost:8080/get ,返回配置的默認值 “false”

使用Nacos修改配置

添加剛剛創建的data id 的服務,并將配置由 false 修改為 true,如圖所示。

Spring,Cloud,Alibaba,Nacos

發布后,返回配置列表,出現新添加的配置,如圖所示。

Spring,Cloud,Alibaba,Nacos

再次訪問 http://localhost:8080/get ,返回值為 “true”。

數據源

經過了上邊的一些簡單操作,我們已經可以正常使用 Nacos 配置中心了。

但是不知道你有沒有想過:配置數據是存在哪里呢?

我們沒有對 Nacos Server 做任何配置,那么數據只有兩個位置可以存儲:

  • 內存
  • 本地數據庫

重啟了 Nacos server ,你會發現原先創建的配置依然,這說明不是內存存儲的。

這時候我們打開NACOS_PATH/data,會發現里邊有個derby-data目錄,Derby 是 Java 編寫的數據庫,屬于 Apache 的一個開源項目。我們的配置數據現在就存儲在這個庫中。

Derby 我們并不是很熟悉,但是數據源可以改為我們熟悉的 MySQL。具體的操作步驟如下。

創建一個名為nacos_config的 database。

將NACOS_PATH/conf/nacos-mysql.sql中的表結構導入剛才創建的庫中。

修改NACOS_PATH/conf/application.properties文件,增加支持mysql數據源配置(目前只支持mysql),添加mysql數據源的url、用戶名和密碼。

spring.datasource.platform=mysqldb.num=1db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=truedb.user=rootdb.password=root

再以單機模式啟動nacos,nacos所有寫嵌入式數據庫的數據都寫到了mysql了。

到這里SpringBoot使用Nacos配置中心就完成了,關于Nacos更多功能及詳細使用,可以參看官方文檔。

源碼下載

https://github.com/gf-huanchupk/SpringCloudAlibabaLearning

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到JAVA教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 桃园县| 富裕县| 东山县| 滕州市| 丽水市| 弥勒县| 泰安市| 杭锦后旗| 炎陵县| 大庆市| 广宁县| 娱乐| 衡水市| 仙游县| 紫金县| 景泰县| 阳朔县| 龙川县| 安达市| 克什克腾旗| 常宁市| 临城县| 保亭| 汶川县| 娄底市| 镇江市| 景德镇市| 石景山区| 罗平县| 新巴尔虎右旗| 惠来县| 罗江县| 西充县| 祁阳县| 梧州市| 长春市| 南充市| 高阳县| 锡林郭勒盟| 汪清县| 大丰市|