占用资源极低!这款轻量级 Nacos 性能炸裂!
大家好,我是 Java陈序员。在开辟中,Nacos 作为一款非常流行的微服务配置中央、注册中央,在构建微服务项目时往往会使用到它。
但是对于个人开辟者而言,云服务器资源有限,往往无法撑起 Nacos 服务的高内存使用!
今天,给大家介绍一款轻量级的 Nacos 服务,功能平替,占用资源极低!
关注微信公众号:【Java陈序员】,获取开源项目分享、AI副业分享、超200本经典盘算机电子册本等。
项目简介
r-nacos —— 一个用 Rust 实现的轻量、快速、稳定、高性能的 Nacos 服务,包含注册中央、配置中央、Web 管理控制台功能,支持单机、集群部署。
https://chen-coding.oss-cn-shenzhen.aliyuncs.com/create-center/r-nacos/img-20241108153111.png
架构图
https://chen-coding.oss-cn-shenzhen.aliyuncs.com/create-center/r-nacos/img-20241108153204.png
对比 Nacos
r-nacos 相较于 Java Nacos 来说,提供雷同功能,设计上完全兼容最新版本 Nacos 面向 Client SDK 的协议,Nacos 服务应用可以无缝平迁到 r-nacos. 但是 r-nacos 启动更快、占用体系资源更小、性能更高。
由于 r-nacos资源占用率低: 包 10M 出头不依赖、JDK、运行时 CPU 小于 0.5%、小于 5M(具体和实例有关),非常适合用于替换个人资源云服务部署的 Nacos.
性能压测
r-nacos 的性能还黑白常好的,如下是官方提供的性能压测结果表,可以参考下。
https://chen-coding.oss-cn-shenzhen.aliyuncs.com/create-center/r-nacos/img-20241108153250.png
项目截图
配置列表
https://chen-coding.oss-cn-shenzhen.aliyuncs.com/create-center/r-nacos/img-20241108153945.png
https://chen-coding.oss-cn-shenzhen.aliyuncs.com/create-center/r-nacos/img-20241108154130.png
服务列表
https://chen-coding.oss-cn-shenzhen.aliyuncs.com/create-center/r-nacos/img-20241108154608.png
https://chen-coding.oss-cn-shenzhen.aliyuncs.com/create-center/r-nacos/img-20241108154640.png
用户管理
https://chen-coding.oss-cn-shenzhen.aliyuncs.com/create-center/r-nacos/img-20241108155116.png
命名空间
https://chen-coding.oss-cn-shenzhen.aliyuncs.com/create-center/r-nacos/img-20241108155208.png
数据迁徙
https://chen-coding.oss-cn-shenzhen.aliyuncs.com/create-center/r-nacos/img-20241108155243.png
体系监控
https://chen-coding.oss-cn-shenzhen.aliyuncs.com/create-center/r-nacos/img-20241108155318.png
快速上手
安装运行
[*]方式 1:下载二进制包运行
# 解压
tar -xvf rnacos-x86_64-apple-darwin.tar.gz
# 运行
./rnacos
[*]方式 2: 通过 Docker 运行
# stable是最新正式版本号,也可以指定镜像版本号,如: qingpan/rnacos:v0.4.0
docker pull qingpan/rnacos:stable
docker run --name mynacos -p 8848:8848 -p 9848:9848 -p 10848:10848 -d qingpan/rnacos:stable
[*]方式 3: 通过 docker-compose 运行
# 集群部署样例,数据目录: ./data
version: '3.8'
services:
nacos:
image: qingpan/rnacos:stable
container_name: nacos
ports:
- "8848:8848"
- "9848:9848"
- "10848:10848"
volumes:
- /data/software/rnacos:/io:rw
environment:
- RNACOS_INIT_ADMIN_USERNAME=admin
- RNACOS_INIT_ADMIN_PASSWORD=admin
- RNACOS_HTTP_PORT=8848
restart: always
[*]方式 4: 下载源码编译运行
git clone https://github.com/r-nacos/r-nacos.git
cd r-nacos
cargo build --release
cargo run --release启动服务后可以在浏览器通过 http://127.0.0.1:10848/rnacos/ 访问 r-nacos 控制台。
初始用户名/密码:admin/admin.
除了以上几种部署安装方式外,官方还提供了 cargo 编译安装、MacOS 支持通过 brew 安装、K8s安装 等方式,以及集群部署,对应的安装可参考官方文档。
客户端使用
r-nacos 安装运行好后,Java 服务客户端仍可使用 Nacos 原来的集成方式,只需将配置中央、注册中央的地址指向为 r-nacos 服务地址,无缝衔接~
[*]配置中央 Http API 示例
# 设置配置
curl -X POST 'http://127.0.0.1:8848/nacos/v1/cs/configs' -d 'dataId=t001&group=foo&content=contentTest'
# 查询
curl 'http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=t001&group=foo'
[*]注册中央 Http API 示例
# 注册服务实例
curl -X POST 'http://127.0.0.1:8848/nacos/v1/ns/instance' -d 'port=8000&healthy=true&ip=192.168.1.11&weight=1.0&serviceName=nacos.test.001&groupName=foo&metadata={"app":"foo","id":"001"}'
curl -X POST 'http://127.0.0.1:8848/nacos/v1/ns/instance' -d 'port=8000&healthy=true&ip=192.168.1.12&weight=1.0&serviceName=nacos.test.001&groupName=foo&metadata={"app":"foo","id":"002"}'
curl -X POST 'http://127.0.0.1:8848/nacos/v1/ns/instance' -d 'port=8000&healthy=true&ip=192.168.1.13&weight=1.0&serviceName=nacos.test.001&groupName=foo&metadata={"app":"foo","id":"003"}'
# 查询服务实例
curl "http://127.0.0.1:8848/nacos/v1/ns/instance/list?&namespaceId=public&serviceName=foo%40%40nacos.从功能上来说 r-nacos 是可以平替 Nacos 的,而且它占用内存资源非常低,非常适用于个人开辟者使用,感爱好的可以尝试体验下~
项目地址:https://github.com/nacos-group/r-nacos最后
推荐的开源项目已经收录到 GitHub 项目,欢迎 Star:
https://github.com/chenyl8848/great-open-source-project或者访问网站,进行在线浏览:
https://chencoding.top:8090/#/https://chen-coding.oss-cn-shenzhen.aliyuncs.com/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20240629100336.png
大家的点赞、收藏和评论都是对作者的支持,如文章对你有帮助还请点赞转发支持下,谢谢!
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]