Spring Cloud Alibaba Nacos搭建服務註冊發現和配置中心
文章目錄
一、Nacos簡介
Nacos是阿里雲中介軟體團隊開源的一個專案。Nacos 致力於幫助您發現、配置和管理微服務。Nacos 提供了一組簡單易用的特性集,幫助您快速實現動態服務發現、服務配置、服務後設資料及流量管理。
Nacos 幫助您更敏捷和容易地構建、交付和管理微服務平臺。 Nacos 是構建以“服務”為中心的現代應用架構 (例如微服務正規化、雲原生正規化) 的服務基礎設施。
Nacos 的關鍵特性包括:
- 服務發現和服務健康監測
- 動態配置服務
- 動態 DNS 服務
- 服務及其後設資料管理
二、安裝Nacos-server
1、預備環境準備
Nacos 依賴 Java 環境來執行。如果您是從程式碼開始構建並執行Nacos,還需要為此配置 Maven環境,請確保是在以下版本環境中安裝使用:
- 64 bit JDK 1.8+;下載 & 配置。
- Maven 3.2.x+;下載 & 配置。
2、下載安裝包
從該地址下載Nacos編譯後的壓縮包並解壓:https://github.com/alibaba/nacos/releases
目前最新版本2.0.0預發行版,推薦使用1.3.2穩定版本。
3、啟動伺服器
- Linux/Unix/Mac
啟動命令(standalone代表著單機模式執行,非叢集模式):
sh startup.sh -m standalone
- Windows
啟動命令(standalone代表著單機模式執行,非叢集模式):
cmd startup.cmd -m standalone
伺服器啟動後,瀏覽器訪問地址:http://localhost:8848/nacos/
(使用者名稱和密碼都是nacos)
三、啟動服務發現
接下來,講一下如何在您的 Spring Cloud 專案中啟用 Nacos 的服務發現功能。配置服務,從而服務可以通過 Nacos 的服務註冊發現功能將其服務註冊到 Nacos server 上。
1、引入依賴
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>${latest.version}</version>
</dependency>
注意:版本 2.1.x.RELEASE 對應的是 Spring Boot 2.1.x 版本。版本 2.0.x.RELEASE 對應的是 Spring Boot 2.0.x 版本,版本 1.5.x.RELEASE 對應的是 Spring Boot 1.5.x 版本。
2、配置檔案
application.yml中配置 Nacos server 的地址和應用名。
spring:
application:
name: nacos-demo
cloud:
nacos:
discovery:
server-addr: localhost:8848
3、開啟服務註冊發現功能
通過 Spring Cloud 原生註解 @EnableDiscoveryClient 開啟服務註冊發現功能。
@SpringBootApplication
@EnableDiscoveryClient
public class NacosDemoApplication {
public static void main(String[] args) {
SpringApplication.run(NacosDemoApplication.class, args);
}
}
4、啟動服務
啟動服務,然後到Nacos server檢視是否註冊成功。
四、啟動配置管理
1、引入依賴
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
<version>${latest.version}</version>
</dependency>
注意:版本 2.1.x.RELEASE 對應的是 Spring Boot 2.1.x 版本。版本 2.0.x.RELEASE 對應的是 Spring Boot 2.0.x 版本,版本 1.5.x.RELEASE 對應的是 Spring Boot 1.5.x 版本。
2、配置檔案
bootstrap.yml中配置 Nacos server 的地址和應用名。
spring:
application:
name: nacos-demo
cloud:
nacos:
config:
server-addr: localhost:8848
file-extension: yml
說明:之所以需要配置 spring.application.name ,是因為它是構成 Nacos 配置管理 dataId欄位的一部分。
3、獲取Nacos server的配置資訊
在Nacos server上增加配置資訊(配置管理->配置列表->新增配置)。
在服務專案中嘗試獲取Nacos server的配置資訊。
@SpringBootApplication
public class NacosDemoApplication {
public static void main(String[] args) {
ConfigurableApplicationContext applicationContext = SpringApplication.run(NacosDemoApplication.class, args);
String userName = applicationContext.getEnvironment().getProperty("user.name");
String userPassword = applicationContext.getEnvironment().getProperty("user.password");
System.err.println("user name :" + userName + "; password: " + userPassword);
}
}
重新啟動專案,發現控制檯輸出取到了Nacos server的配置資訊。
五、總結
Nacos功能相當強大,既可以做服務發現,又能做配置管理,並且開源專案還在維護中,相信隨著版本的不斷更新迭代,一定會更強大更穩定。
相關文章
- Spring Cloud Alibaba---服務註冊、發現、管理中心NacosSpringCloud
- Spring Cloud Alibaba | Nacos服務註冊與發現SpringCloud
- Spring Cloud Alibaba 使用Nacos作為服務註冊中心SpringCloud
- Spring Cloud Alibaba:Nacos 作為註冊中心和配置中心使用SpringCloud
- Spring Cloud Alibaba 整合 Nacos 實現服務配置中心SpringCloud
- Spring Cloud Alibaba(4)---Nacos(註冊中心)SpringCloud
- Spring Cloud Alibaba教程:使用Nacos作為服務註冊發現元件SpringCloud元件
- Spring Cloud Alibaba基礎教程:使用Nacos實現服務註冊與發現SpringCloud
- 普通springcloud eureka 和 spring cloud Alibaba nacos 註冊中心SpringGCCloud
- Spring Cloud 微服務實戰——nacos 服務註冊中心搭建(附原始碼)SpringCloud微服務原始碼
- Spring Cloud Alibaba系列(二)nacos作為服務配置中心SpringCloud
- 服務治理->搭建服務註冊中心: Spring Cloud EurSpringCloud
- SpringCloud-Alibaba之Nacos服務註冊中心SpringGCCloud
- Spring Cloud Alibaba(5)---Nacos(配置中心)SpringCloud
- spring cloud alibaba系列(一) 服務註冊SpringCloud
- Spring Cloud Eureka 實現高可用服務發現註冊中心SpringCloud
- Nacos服務註冊與發現
- 微服務架構 | 3.2 Alibaba Nacos 註冊中心微服務架構
- 建立一個spring alibaba nacos Discovery 服務註冊demoSpring
- Dubbo與SpringCloud Alibaba使用Nacos作為配置中心和註冊中心SpringGCCloud
- Spring Cloud 實戰一:服務註冊中心SpringCloud
- Dubbo+Nacos實現服務註冊和發現
- Spring Cloud:使用Eureka叢集搭建高可用服務註冊中心SpringCloud
- naocs 作為服務註冊與發現和配置中心
- Nacos服務註冊與發現原理
- spring cloud gateway之服務註冊與發現SpringCloudGateway
- Spring Cloud Eureka 實現服務註冊與發現SpringCloud
- consul 作為服務註冊與發現和配置中心
- Nacos 服務註冊與發現原理分析
- Nacos服務註冊與發現的原理
- Spring Cloud微服務架構—服務註冊與發現SpringCloud微服務架構
- Spring Cloud 系列(一)Eureka 服務註冊與發現SpringCloud
- Spring Cloud(一) 服務的註冊與發現(Eureka)SpringCloud
- springboot整合nacos註冊中心和配置中心Spring Boot
- Spring Cloud Alibaba基礎教程:使用Nacos作為配置中心SpringCloud
- Spring Cloud Alibaba 使用Nacos作為配置管理中心SpringCloud
- apisix~整合服務發現註冊中心API
- SpringCloud Alibaba實戰(7:nacos註冊中心管理微服務)SpringGCCloud微服務