成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

服務配置:項目整合Nacos配置中心

開發 架構
本章中在測試每個案例時,都需要啟動Nacos,Sentinel,ZipKin和RocketMQ。

基于阿里開源的Sentinel實現了服務的限流與容錯,并詳細介紹了Sentinel的核心技術與配置規則。簡單介紹了服務網關,并對SpringCloud Gateway的核心架構進行了簡要說明,也在項目中整合了SpringCloud Gateway網關實現了通過網關訪問后端微服務。

同時,也基于SpringCloud Gateway整合Sentinel實現了網關的限流功能,詳細介紹了SpringCloud Gateway網關的核心技術。在鏈路追蹤章節,我們開始簡單介紹了分布式鏈路追蹤技術與解決方案,隨后在項目中整合Sleuth實現了鏈路追蹤,并使用Sleuth整合ZipKin實現了分布式鏈路追蹤的可視化 。

在消息服務章節,我們介紹了MQ的使用場景,引入MQ后的注意事項以及MQ的選型對比,在項目中整合了RocketMQ,并給大家介紹了RocketMQ的核心技術。

在服務配置章節,我們首先介紹了服務配置與Nacos作為配置中心的相關概念。接下來,我們就正式在項目中整合Nacos配置中心。

本章總覽

圖片圖片

「注意:本章中在測試每個案例時,都需要啟動Nacos,Sentinel,ZipKin和RocketMQ。另外,本章對應的Nacos配置(冰河親測的Nacos配置)放在了項目源碼的doc/nacos/config/chapter22目錄下,小伙伴們將Nacos的配置直接導入到Nacos的配置列表中,也可以按照文章自己手動實現。」

環境準備?

分別在用戶微服務shop-user,商品微服務shop-product,訂單微服務shop-order和網關服務shop-gateway中的pom.xml文件中添加如下依賴。

<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>

服務整合Nacos配置中心?

這里,我們將用戶微服務,商品微服務,訂單微服務和網關服務的配置信息都放在Nacos中。

「注意:將微服務的配置放在Nacos中時,就暫時不用微服務中的application.yml配置文件了,而是在項目中新建一個bootstrap.yml文件。因為配置文件的優先級從高到低依次為:bootstrap.properties -> bootstrap.yml -> application.properties -> application.yml。」

用戶微服務整合配置中心

(1)在用戶微服務shop-user的resources目錄下新建bootstrap.yml文件,文件內容如下所示。

spring:
application:
name: server-user
cloud:
nacos:
config:
server-addr: 127.0.0.1:8848
file-extension: yaml
group: user_group
profiles:
active: dev

(2)啟動Nacos,在瀏覽器中輸入http://localhost:8848/nacos并登錄Nacos,選擇Nacos菜單中的配置管理-配置列表,如下所示。

圖片圖片

(3)點擊配置列表界面中的 「+」 ,如下所示。

圖片圖片

點開后的界面如下所示。

圖片

其中各個配置項的含義如下所示。

  • Data ID就是配置集ID,通常情況下就是某個配置文件的ID,這個ID的命名遵循一定的規則,如下所示。
${spring.application.name}-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}

這里,對應到用戶微服務的Data ID就是:server-user-dev.yaml。所以,對于用戶微服務來說,我們在Data ID中輸入server-user-dev.yaml。

  • Group:配置分組,配置分組要與spring.cloud.nacos.config.group對應,用戶微服務的配置分組就是user_group。
  • 描述:對當前配置的簡單描述。例如,用戶微服務的開發環境配置。
  • 配置格式:表示配置內容所使用的文件格式,這里我們選擇YAML格式。
  • 配置內容:配置文件的內容,這里我們直接將application.yml文件的內容復制進去即可。

配置好之后的內容如下所示。

圖片

配置好之后點擊頁面的發布按鈕,如下所示。

圖片圖片

發布成功后會跳轉到配置管理-配置列表界面,如下所示。

圖片圖片

(4)注釋掉用戶微服務shop-user的resources目錄下的application.yml文件中的內容(重要,不要忘記)。

至此,就完成了修改用戶微服務的配置操作。

商品微服務整合配置中心

修改商品微服務的配置過程與修改用戶微服務的配置過程類似,只是部分配置項不同。

(1)在商品微服務shop-product的resources目錄下新建bootstrap.yml文件,內容如下所示。

spring:
application:
name: server-product
cloud:
nacos:
config:
server-addr: 127.0.0.1:8848
file-extension: yaml
group: product_group
profiles:
active: dev

(2)在Nacos中的配置信息如下所示。

圖片圖片

(3)注釋掉商品微服務shop-product的resources目錄下的application.yml文件中的內容(重要,不要忘記)。

訂單微服務整合配置中心

修改訂單微服務的配置過程與修改用戶微服務的配置過程類似,只是部分配置項不同。

(1)在訂單微服務shop-order的resources目錄下新建bootstrap.yml文件,內容如下所示。

spring:
application:
name: server-order
cloud:
nacos:
config:
server-addr: 127.0.0.1:8848
file-extension: yaml
group: order_group
profiles:
active: dev

(2)在Nacos中的配置信息如下所示。

圖片

(3)注釋掉訂單微服務shop-order的resources目錄下的application.yml文件中的內容(重要,不要忘記)。

網關服務整合配置中心

修改網關服務的配置過程與修改用戶微服務的配置過程類似,只是部分配置項不同。

(1)在網關服務shop-gateway的resources目錄下新建bootstrap.yml文件,內容如下所示。

spring:
application:
name: server-gateway
main:
allow-bean-definition-overriding: true
cloud:
nacos:
config:
server-addr: 127.0.0.1:8848
file-extension: yaml
group: gateway_group
profiles:
active: dev

(2)在Nacos中的配置信息如下所示。

圖片圖片

(3)注釋掉網關服務shop-gateway的resources目錄下的application.yml文件中的內容(重要,不要忘記)。

查看Nacos中的配置

將用戶微服務、商品微服務、訂單微服務、網關服務的配置添加到Nacos中后,Nacos中的配置管理-配置列表如下所示。

圖片圖片

整合Nacos配置中心測試?

(1)分別啟動Nacos、Sentinel、ZipKin、RocketMQ的NameServer和Broker。

(2)分別啟動用戶微服務、商品微服務、訂單微服務和網關服務,如果啟動成功,基本就說明項目整合Nacos配置中心成功。

(3)啟動四個服務后,在瀏覽器中輸入localhost:10001/server-order/order/submit_order?userId=1001&productId=1001&count=1,如下所示。

圖片圖片

查看各個微服務中也會打印出相關的日志,如下所示。

  • 用戶微服務會打印出如下信息。
獲取到的用戶信息為:{"address":"北京","id":1001,"password":"c26be8aaf53b15054896983b43eb6a65","phone":"13212345678","username":"binghe"}
用戶微服務收到了訂單信息:{"address":"北京","id":15235872727371776,"phone":"13212345678","totalPrice":2399.00,"userId":1001,"username":"binghe"}
  • 商品微服務會打印出如下信息。
獲取到的商品信息為:{"id":1001,"proName":"華為","proPrice":2399.00,"proStock":9999}
更新商品庫存傳遞的參數為: 商品id:1001, 購買數量:1
  • 訂單微服務會打印出如下信息。
提交訂單時傳遞的參數:{"count":1,"empty":false,"productId":1001,"userId":1001}
庫存扣減成功
  • 網關服務會打印出如下信息。
執行前置過濾器邏輯
執行后置過濾器邏輯
訪問接口主機: localhost
訪問接口端口: 10001
訪問接口URL: /server-order/order/submit_order
訪問接口URL參數: userId=1001&productId=1001&count=1
訪問接口時長: 1260ms

說明我們的項目中成功整合了Nacos的配置中心。

責任編輯:姜華 來源: 冰河技術
相關推薦

2021-06-29 07:04:38

Nacos服務配置

2021-08-09 07:58:36

Nacos 服務注冊源碼分析

2021-06-10 06:57:39

Nacos配置模塊

2024-12-10 08:27:28

2022-06-15 16:35:02

配置共享Nacos

2022-06-08 10:58:00

服務配置Nacos

2022-08-29 06:27:15

Nacos微服務

2022-08-30 22:12:19

Nacos組件服務注冊

2023-08-03 08:51:07

2021-08-02 07:35:19

Nacos配置中心namespace

2021-07-02 22:23:50

Nacos配置模型

2023-11-17 09:02:51

Nacos配置中心

2021-02-10 09:54:15

分布式NacosApollo

2021-04-18 07:33:20

項目Springboot Nacos

2025-03-03 10:27:33

配置中心微服務架構

2021-01-04 09:35:55

微服務架構配置中心

2024-12-27 12:10:58

2023-12-21 21:09:47

2022-06-02 08:21:07

RocketMQ消息中間件

2023-07-26 08:25:02

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲国产一区视频 | 日韩欧美三区 | 亚洲欧美一区二区三区国产精品 | 每日更新av| 久久亚洲欧美日韩精品专区 | 国产一级一级毛片 | 亚洲一区二区三区四区五区午夜 | www久久久| 欧产日产国产精品国产 | 永久精品| 日韩在线视频一区二区三区 | 国产精品视频一二三区 | 99久久精品免费看国产高清 | 日本久久www成人免 成人久久久久 | 国产精品久久久久久久久久久久 | 国内精品久久久久久久 | 玖玖久久 | 91免费视频 | 久久99精品国产 | 久久夜视频 | 欧美精品一区二区在线观看 | 国产精品久久久久久福利一牛影视 | 中文字幕在线观看第一页 | 天堂中文资源在线 | 中文字幕在线视频观看 | 久久精品视频一区二区三区 | 色爱综合网 | 国产精品久久久久久久久久 | 91在线精品一区二区 | 日韩欧美国产一区二区三区 | 免费毛片网站在线观看 | 午夜视频导航 | 午夜在线精品偷拍 | 亚洲国产精品久久 | 国产精品亚洲精品久久 | 亚洲欧美综合精品久久成人 | 欧美日韩一 | 日韩视频精品在线 | 国精久久 | 国产高清免费在线 | 国产一级黄色网 |