Spring Cloud Alibaba 之Nacos

Nacos 技術講解

一提到分佈式系統就不的不提一下 CAP 原則

什麼是CAP

CAP原則又稱CAP定理,指的是在一個分佈式系統中,一致性(Consistency)、可用性(Availability)、分區容錯性(Partition tolerance)。CAP 原則指的是,這三個要素最多只能同時實現兩點,不可能三者兼顧。

CAP 的原則下 Alibaba Naos 同時支持AP和CP模式,他根據服務註冊選擇臨時和永久來決定走AP模式還是CP模式,他這裡支持CP模式對於我的理解來說,應該是為了配置中心集群,因為nacos可以同時作為註冊中心和配置中心,因為他的配置中心信息是保存在nacos裏面的,假如因為nacos其中一台掛掉後,還沒有同步配置信息, 就可能發生配置不一致的情況., 配置中心的配置變更是服務端有監聽器,配置中心發生配置變化, 然後服務端會監聽到配置發生變化,從而做出改變
下面我搭建一個簡單的微服務系統,針對這個系統進行講解
系統架構圖:

這個主要完成一個一個前端頁面進行實時計算的功能,大家可以理解為一個簡單的計算器.

  • website : 前端
  • Gateway :服務網關
  • UserCenter : 用戶服務
  • MqCenter: 消息服務
  • AlogirthmCenter: 計算服務
  • ConfigCenter: 配置中心
  • ServiceDiscovery(Nacos):服務發現
  • CPP 為C 語言編寫的計算流程

此項目包括用到的技術棧包括,Spring Cloud Alibaba/Spring Boot/Mysql/MQ/Linux 等

什麼是Nacos

官方文檔
上面是Nacos 的官網大家可以自行了解下,對Nacos 做一個深入的了解,正所謂師傅領進門,修行在個人,大家還要多學習,多了解

天也不早了 ,人也不少了,閑話少說,先干正事。
** Nacos 下載地址**
選擇對應版本進行解壓(注意 Nacos 解壓後 是一個完整的運行包,如果用的不熟練,不要動裏面的配置信息)

下載完成後解壓後進入到 bin 目錄 在終端運行命令

  • MAC
    sh startup.sh -m standalone
    (standalone代表着單機模式運行,後看會單獨講解集群模式的搭建和啟動方法)
  • Windows
    cmd startup.cmd

啟動成功後 默認賬號密碼 nacos/nacos(初始賬號密碼)

登錄後可以看到左上角中英文切換,英語不好的同學們 可以切換到中文

  • 配置管理主要是用來做項目配置,比如配置文件等可以用nacos來管理 因為nacos不僅僅是服務中心,也是配置中心(後面有講)
  • 服務管理是用來管理每個微服務,每個在nacos上註冊的微服務在這裡都可以看到
  • 命名空間是用來做服務環境區分,當項目需要開發,測試, 生產等多個不同的配置, 命名空間就可以做配置隔離。
  • 集群管理 後面會單獨講解

下一章會講解如何在Nacos 上註冊一個簡單的微服務