【深入淺出Dubbo3原理及實戰】「SpringCloud-Alibaba系列」基于Nacos作為注冊中心進行發布SpringCloud-alibaba生態的RPC接口實戰

2022-12-14 14:04:44 來源:51CTO博客

Spring Cloud Alibaba Nacos Discovery

Spring Boot 應用程序在服務注冊與發現方面提供和 Nacos 的無縫集成。 通過一些簡單的注解,您可以快速來注冊一個服務,并使用經過雙十一考驗的 Nacos 組件來作為大規模分布式系統的服務注冊中心。

服務注冊發現: Nacos Discovery Starter

服務發現是微服務架構體系中最關鍵的組件之一。如果嘗試著用手動的方式來給每一個客戶端來配置所有服務提供者的服務列表是一件非常困難的事,而且也不利于 服務的動態擴縮容。Nacos Discovery Starter 可以幫助您將服務自動注冊到 Nacos 服務端并且能夠動態感知和刷新某個服務實例的服務列表。除此之外,Nacos Discovery Starter 也將服務實例自身的一些元數據信息-例如 host,port,健康檢查URL,主頁等-注冊到 Nacos 。Nacos 的獲取和啟動方式可以參考 Nacos 官網。


(資料圖片)

Nacos快速開始

這個快速開始手冊是幫忙您快速在您的電腦上,下載、安裝并使用 Nacos。

版本選擇

Nacos 1.X 是老版本,將來會停止維護。 建議您使用2.X版本。

預備環境準備

Nacos 依賴??Java??環境來運行。如果您是從代碼開始構建并運行Nacos,還需要為此配置??Maven??環境,請確保是在以下版本環境中安裝使用:

64 bit OS,支持 Linux/Unix/Mac/Windows,推薦選用 Linux/Unix/Mac。64 bit JDK 1.8+的下載地址:??https://www.oracle.com/java/technologies/downloads/#java8??Maven 3.2.x+的下載地址:??https://maven.apache.org/download.cgi??
下載源碼或者安裝包

你可以通過源碼和發行包兩種方式來獲取 Nacos。

從Github上下載源碼方式

git clone https://github.com/alibaba/nacos.gitcd nacos/mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U  ls -al distribution/target/// change the $version to your actual pathcd distribution/target/nacos-server-$version/nacos/bin
下載編譯后壓縮包方式

您可以從 最新穩定版本 下載 nacos-server-$version.zip 包。

unzip nacos-server-$version.zip 或者 tar -xvf nacos-server-$version.tar.gzcd nacos/bin
啟動服務器

注:Nacos的運行需要以至少2C4g60g * 3的機器配置下運行。

Linux/Unix/Mac

啟動命令(standalone代表著單機模式運行,非集群模式):

sh startup.sh -m standalone

如果您使用的是ubuntu系統,或者運行腳本報錯提示[[符號找不到,可嘗試如下運行:

bash startup.sh -m standalone
Windows

啟動命令(standalone代表著單機模式運行,非集群模式):

startup.cmd -m standalone
服務注冊
服務注冊
curl -X POST "http://127.0.0.1:8848/nacos/v1/ns/instance?serviceName=nacos.naming.serviceName&ip=20.18.7.10&port=8080"
服務發現
curl -X GET "http://127.0.0.1:8848/nacos/v1/ns/instance/list?serviceName=nacos.naming.serviceName"
關閉服務器
Linux/Unix/Mac
sh shutdown.sh
Windows
shutdown.cmd

或者雙擊shutdown.cmd運行文件。

Dubbo 融合 Nacos 成為注冊中心

對于Nacos服務進行了簡單的介紹和部署后,我們就可以使用其作為我們的注冊中心使用,Nacos 作為 Dubbo 生態系統中重要的注冊中心實現,本文將會介紹如何進行 Dubbo 對接 Nacos 注冊中心的工作。

Dubbo 融合 Nacos 成為注冊中心的操作步驟非常簡單,大致步驟可分為“增加 Maven 依賴”以及“配置注冊中心“。

前提準備

請確保后臺已經啟動Nacos服務

增加 Maven 依賴

只需要依賴Dubbo客戶端即可,關于推薦的使用版本,請參考Dubbo官方文檔或者咨詢Dubbo開發人員:

            com.alibaba        dubbo        3.0.10                    com.alibaba        dubbo-registry-nacos        3.0.10                    com.alibaba.spring        spring-context-support        1.0.11    

使用 Nacos 注冊中心

Spring的xml配置文件
                        
設置指定命名空間

默認使用的為public命名空間

指定對應的命名空間

如果要使用自己創建的命名空間可以使用下面配置

Spring的yaml配置文件
dubbo.application.name=dubbo-provider-yaml-demodubbo.registry.address=nacos://${nacos.address:localhost}:8848dubbo.consumer.timeout=3000

重啟 Dubbo 應用后,您同樣也能發現服務提供方和消費方的注冊元信息呈現在 Nacos 控制臺中:

標簽: 命名空間 快速開始 配置文件

上一篇:漢諾塔(C語言)
下一篇:消息!CentOS 7 上安裝 MariaDB 的 2 種方法