r-nacos | 超性能 nacos server 實(shí)現(xiàn)
r-nacos 簡介
r-nacos 是一個(gè)用 rust 實(shí)現(xiàn)的 nacos 服務(wù)端。r-nacos 相較于 java nacos 來說,是一個(gè)提供相同功能,啟動(dòng)更快、占用系統(tǒng)資源更小、性能更高、運(yùn)行更穩(wěn)定的服務(wù)。
r-nacos 設(shè)計(jì)上完全兼容最新版本 nacos 面向 client sdk 的協(xié)議(包含 1.x 的 http OpenApi,和 2.x 的 grpc 協(xié)議), 支持使用 nacos 服務(wù)的應(yīng)用平遷到 r-nacos。
內(nèi)存占用對比
相同環(huán)境,實(shí)現(xiàn)相同業(yè)務(wù)需求 rnacos、java-nacos 運(yùn)行內(nèi)存實(shí)測對比。
# rust nacos 實(shí)現(xiàn)
ps aux | grep rnacos | awk '{print $6/1024 "M"}'
1.34375M
# nacos 官方j(luò)ava 版本
ps aux | grep Nacos | awk '{print $6/1024 "M"}'
368.215M
快速上手
從 github release[1] 下載對應(yīng)系統(tǒng)的應(yīng)用包,不依賴java環(huán)境,解壓后即可運(yùn)行。
# linux 或 mac 解壓
tar -xvf rnacos-x86_64-apple-darwin.tar.gz
# 運(yùn)行
./rnacos
windows 解壓后直接運(yùn)行 rnacos.exe 即可。
瀏覽器訪問:http://localhost:10848 ,進(jìn)入控制臺
配置管理使用
服務(wù)發(fā)現(xiàn)使用
- 服務(wù)發(fā)現(xiàn)列表
- 服務(wù)實(shí)例控制

適用場景
-
開發(fā)測試環(huán)境中使用的 Nacos 可以替換為 r-nacos,實(shí)現(xiàn)秒級啟動(dòng)。
-
個(gè)人資源云服務(wù)部署的 Nacos 可以考慮替換為 r-nacos,其資源占用率極低:安裝包僅 10M 多一點(diǎn),不依賴 JDK,運(yùn)行時(shí) CPU 占用小于 0.5%,內(nèi)存占用小于 5M(具體值依實(shí)例而異)。
-
對于使用非定制版 Nacos 服務(wù)且希望提升服務(wù)性能與穩(wěn)定性的用戶,可以考慮遷移到 r-nacos。
-
詳細(xì)性能說明 [2]
r-nacos下載: https://github.com/r-nacos/r-nacos/releases
[2]詳細(xì)性能說明: https://r-nacos.github.io/r-nacos/performance.html
