當前位置: 妍妍網 > 碼農

r-nacos | 超效能 nacos server 實作

2024-03-08碼農

r-nacos 簡介

r-nacos 是一個用 rust 實作的 nacos 伺服端 。r-nacos 相較於 java nacos 來說,是一個提供相同功能, 啟動更快、占用系統資源更小、效能更高 、執行更穩定的服務。

r-nacos 設計上完全相容最新版本 nacos 面向 client sdk 的協定(包含 1.x 的 http OpenApi,和 2.x 的 grpc 協定), 支持使用 nacos 服務的套用平遷到 r-nacos。

記憶體占用對比

相同環境,實作相同業務需求 rnacos、java-nacos 執行記憶體實測對比。

# rust nacos 實作
ps aux | grep rnacos | awk '{print $6/1024 "M"}'
1.34375M

# nacos 官方java 版本
ps aux | grep Nacos | awk '{print $6/1024 "M"}'
368.215M

快速上手

github release [1] 下載對應系統的套用包, 不依賴java環境,解壓後即可執行

# linux 或 mac 解壓
tar -xvf rnacos-x86_64-apple-darwin.tar.gz
# 執行
./rnacos

windows 解壓後直接執行 rnacos.exe 即可。

瀏覽器存取: http://localhost:10848 ,進入控制台

配置管理使用

服務發現使用

  • 服務發現列表

  • 服務例項控制

  • 適用場景

  • 開發測試環境中使用的 Nacos 可以替換為 r-nacos,實作秒級啟動。

  • 個人資源雲服務部署的 Nacos 可以考慮替換為 r-nacos,其資源占用率極低:安裝包僅 10M 多一點, 不依賴 JDK,執行時 CPU 占用小於 0.5%,記憶體占用小於 5M (具體值依例項而異)。

  • 對於使用非客製版 Nacos 服務且希望提升服務效能與穩定性的使用者,可以考慮遷移到 r-nacos。

  • 詳細效能說明 [2]

  • 參考資料

    [1]

    r-nacos下載: https://github.com/r-nacos/r-nacos/releases

    [2]

    詳細效能說明: https://r-nacos.github.io/r-nacos/performance.html