用 rust 重写的配置注册中心 r-nacos 已加入 nacos 官方社区。使用配置注册中心的同学,你们会愿意了解试用吗?

50 天前
 heqingpan

关于 r-nacos,去年有在本站调研过使用的意愿。 收到反馈是: 个人、小公司等对机器资源敏感的同学相对愿意试用(有人用,有价值,可以继续做);规模大一些的,可能需要能证明其真的比较稳定可靠后才会考虑(潜在的用户)。

经过一段时间的持续迭代,在项目加入 nacos 官方社区之际,再来 v 站推广并调研下:使用配置中心或注册中心的同学你们会愿意试用用 rust 重写的 r-nacos 吗?


下面是 r-nacos 的说明:

简介

r-nacos 是一个用 rust 实现的 nacos 服务。相较于 java nacos 来说,是一个提供相同功能,启动更快、占用系统资源更小、性能更高、运行更稳定的服务。 其设计上完全兼容最新版本 nacos 面向 client sdk 的协议支持使用 nacos 服务的应用不用修改代码直接平迁到 r-nacos 。

资源使用情况

演示系统中接入接近 5 千个配置,450 个服务实例,服务使用的内存在 15M 左右。

使用反馈与说明

性能说明

模块 场景 单节点 qps/tps 集群 qps/tps 总结/备注
配置中心 配置写入,集群模式 1.76 万 7.6 千 集群写入压测是在同一台电脑运行 3 个节点,如果换成多个机器部署,tps 应该还能有所提升。
配置中心 配置查询 8 万 n*8 万 集群的查询总 qps 是节点的倍数
注册中心 服务实例注册,http 协议 1.2 万 1.0 万 注册中心单机模式与集群模式写入的性能一致
注册中心 服务实例注册,grpc 协议 1.2 万 1.2 万 grpc 协议压测工具没有支持,目前没有实际压测,理论不会比 http 协议低
注册中心 服务实例心跳,http 协议 1.2 万 1.0 万 心跳是按实例计算和服务实例注册一致共享 qps
注册中心 服务实例心跳,grpc 协议 8 万以上 n*8 万 心跳是按请求链接计算,且不过注册中心处理线程,每个节点只需管理当前节点的心跳,集群总心跳 qps 是节点的倍数
注册中心 查询服务实例 3 万 n*3 万 集群的查询总 qps 是节点的倍数

项目地址

https://github.com/nacos-group/r-nacos

3012 次点击
所在节点    程序员
46 条回复
saka0609
50 天前
正在用
heqingpan
50 天前
@saka0609 欢迎使用,有什么问题或建议可以到 github 提 issue 。
cksspk
50 天前
在用在用,跟动不动占用 1G 多内存的 nacos 相比,r-nacos 几十 M 真的非常推荐。
cksspk
50 天前
有个问题,admin 管理界面的验证码能不能设置成可关闭,每次登录都要输入太麻烦了
suqiuluck
50 天前
👍不错
heqingpan
50 天前
@cksspk 这个目前也是支持的,有个配置 RNACOS_ENABLE_NO_AUTH_CONSOLE 可以开启无校验控制台。具体的你也可以看对应的文档说明。
Morii
50 天前
请问启动更快和占用更小都有数据体现,readme 里的「运行更稳定」是通过什么指标得出的结论?
muyuanqiang7
50 天前
开发环境准备试试
fzdwx
50 天前
已经用到开发环境 3 ~ 4 个月了,体验不错
heqingpan
50 天前
@Morii
启动更快是指启动后,在一秒内可以正常访问接口,nacos 的话自测差不多在 8 秒左右才能正常访问。(这个是人个使用记录,没有用工具做严格对比)

资源占用更小,上面已经给出例子:接入接近 5 千个配置,450 个服务实例,服务使用的内存在 15M 左右。nacos 默认启动后内存就大于 600M 。


运行更稳定,在连续长时间运行(超过一个月)和经过压测场景下,r-nacos 的(内存与 cpu )资源占用都很稳定。nacos 的内存起伏比较大,压测时有时还遇到未及时响应的情况。
Morii
50 天前
@heqingpan #10

谢谢回答,准备调研一下。
ilaipi
50 天前
大佬,为啥两类 docker 包会影响运行性能?
PaulSamuelson
50 天前
天下苦 spring-boot 久已😭
heqingpan
50 天前
@ilaipi 因为 gnu 与 musl 两类包底层的 c 标准库实现不同,一些场景 gnu 比 musl 性能高一些。

不过也差不太多,如果对性能不是非常敏感,用哪个都可以。
heqingpan
50 天前
@fzdwx 感谢反馈
heqingpan
50 天前
@duanquanwu spring-boot 写应用除了内存占用比较大,其它的都挺好的。

不过中间件的话,人个觉得还是用 rust 更好😀
zpfhbyx
50 天前
mark 一下, 很适合当自己的配置中心.
twofox
50 天前
我也在学 rust 。但是作为一个 Java web 开发,发现用 rust 开发一个 web 应用,生态好像还是不行。

rust 不适合用来开发这些业务多的 web 项目,例如 BPM 流程引擎、对 office 文件的一些操作库

可能是我接触的少,不知道 rust 有哪些好用的库
Xrall
50 天前
看了一下介绍以及评论感觉还可以 。开发测试环境可以用来试试。没有 nacos 那些一堆莫名其妙的破问题就好。特别是迭代问题 nacos 真的让人糟心。
rrfeng
50 天前
alibaba/nacos ?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1037929

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX