Nacos的資料持久化

2021-10-04 21:15:44 字數 875 閱讀 7847

我們已經了解nacos作為註冊中心和配置中心,下面來了解下生產部署的角度nacos都需要怎麼配置。

nacos服務端自身並沒有做過什麼特殊的配置,關於預設的單機配置的nacos只適用於測試和開發環境,那麼對於高可用的生產環境,nacos需要做什麼配置?

搭建nacos集群之前,我們需要修改nacos的資料持久化配置為mysql儲存,預設情況下nacos使用嵌入式資料庫實現資料的儲存。如果啟動多個預設配置下的nacos節點,資料儲存是存在一致性問題的。為了解決這個問題,nacos採用了集中式儲存的方式來支援集群化部署,目前只要支援mysql的儲存。

配置nacos的mysql儲存只需要下面三步:

spring.datasource.platform=mysql

db.num=

1db.url.

0=jdbc:mysql:

//localhost:

3306

/nacos?characterencoding=utf8&connecttimeout=

1000

&sockettimeout=

3000

&autoreconnect=

true

db.user=root

db.password=

nacos的配置已完成,重新部署單機模式啟動nacos,我們操作nacos查詢mysql中的表可以查詢到操作記錄已經記錄到資料庫中。

由於引用了mysql,多了乙個中介軟體那麼就要考慮nacos引用對整個系統效能的影響,mysql同時也需要部署集群,成本提高。

一致性問題? 與etcd、consul、zookeeper等通過演算法方式解決一致性問題的中介軟體相比的優點與不足?

nacos文件

Nacos 集群和持久化

官網 上圖翻譯一下 預設nacos使用嵌入式資料庫 derby 實現資料的儲存。所以,如果啟動多個預設配置下的nacos節點,資料儲存是存在一致性問題的。為了解決這個問題,nacos採用了集中式儲存的方式來支援集群化部署,目前只支援mysql的儲存。nacos支援三種部署模式 單機模式 用於測試和單...

Windows 版本nacos持久化

單機模式支援mysql 在0.7版本之前,在單機模式時nacos使用嵌入式資料庫實現資料的儲存,不方便觀察資料儲存的基本情況。0.7版本增加了支援mysql資料來源能力,具體的操作步驟 spring.datasource.platform mysql db.num 1 db.url.0 jdbc m...

sentinel與nacos持久化

在流量控制那篇文章中,我們在sentinel中配置好a服務對應的限流策略後,如果a服務重啟就會導致sentinel中配置好的策略丟失,所以需要持久化操作。流量控制可以有三種方法配置 一種是在sentinel控制台進行配置 服務重啟則配置的策略丟失 一種是在 中進行編寫控制,還有就是從nacos中讀取...