目前开发微服务用 nacos 做注册、配置中心的同学多吗? 如果有一个用系统级语言重写,性能更高、占用资源更小的版本有同学愿意试用吗?

224 天前
 heqingpan

我之前用 rust 重写了 nacos ,开源一段时间,收到的反馈不多。

想确认是用 nacos 的人不多,还是不知道或者知道但没有试用动力的人比较多。


下面附上我重写 nacos 版本简介:

https://github.com/heqingpan/rnacos

rnacos 是一个用 rust 实现的 nacos 服务。

rnacos 包含注册中心、配置中心、web 管理控制台功能,支持单机、集群部署。

rnacos 设计上完全兼容最新版本 nacos 面向 client sdk 的协议(包含 1.x 的 http OpenApi ,和 2.x 的 grpc 协议), 支持使用 nacos 服务的应用平迁到 rnacos 。

rnacos 相较于 java nacos 来说,是一个提供相同功能,启动更快、占用系统资源更小、性能更高、运行更稳定的服务。

性能:

模块 场景 单节点 qps 集群 qps 总结
配置中心 配置写入,单机模式 1.5 万 1.5 万
配置中心 配置写入,集群模式 1.8 千 1.5 千 接入 raft 后没有充分优化,待优化,理论上可接近单机模式
配置中心 配置查询 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 是节点的倍数

收到用户反馈信息,会给我更多的动力。

如果试用过程中有问题可以到 github 给我提 issues 。

如果愿意试用或喜欢的同学就到 github rnacos 给个星 。

4947 次点击
所在节点    Java
71 条回复
imokkkk
224 天前
挺好的 加油
infun
224 天前
如果名字叫 racos 就更好了
gclm
224 天前
🐂,💪🏻 刚本地测试了一下初步感觉效果不错,建议作者搞个微信群或者其他交流渠道,我把个人的小玩意迁移过来,到时候及时交流沟通沟通
zzl22100048
224 天前
原版 1.x 的集群脑裂问题解决了吗
Kilerd
224 天前
简单看了下,手搓 raft ,感觉有点慌。
thetbw
224 天前
个人会用
burymme11
224 天前
收藏支持下。下次开新项目我试试。
zzl22100048
224 天前
看上去没脑裂问题,就是启动需要 node_id 对 k8s 部署太不友好了,而且 node_id 是从 1 开始,想从 podname 截取都不行
yrzs
224 天前
已 star,下次本地开发部署试试
javak
224 天前
我用的 eureka ,楼主有空了再写个这个
pannanxu
223 天前
系统级语言重写,性能更高、占用资源更小❌

大厂背书、活跃的社区、频繁的更新、强大的生态✔

仅仅针对这几点来说,个人认为,作者提出的几个问题并不是什么痛点。但还是支持一下。
coyove
223 天前
手搓基建轮子没人用不是很正常吗,你总得说服人家敢用啊
fanchenio
223 天前
赞同二楼,名字修改一下。
pannanxu
223 天前
@pannanxu 或者改名叫 nacos4rust 把,你这个名字不仔细看总是看错
heqingpan
223 天前
@infun 最开始也想用这个,结果在 crate 被点用了。
heqingpan
223 天前
@gclm 好建议,我晚点建一个。
wqhui
223 天前
最简单一个问题对于商业应用来说是资源占用少、性能高重要,还是稳定性重要,资源跟性能问题可以堆机器解决,万一这种基础组件不稳定,带来的损失就大多了,而个人应用又很少需要搞微服务的
heqingpan
223 天前
@Kilerd 是基与一个 rust raft 库实现的。
heqingpan
223 天前
@zzl22100048
node_id 可以不是 1 ,可以不连续,但需要是不唯一的整数。
Kilerd
223 天前
@pannanxu 终于有人说重点了。

对于「注册中心」这种不会随着业务膨胀而导致资源增长的服务。 足够强的技术支持,社区反馈与改进,强大的生态才是核心痛点。
例如少人用导致 CVE 没有及时上报,CVE 上报了因为生态差没有及时发版修复

因为不会出现资源膨胀,在生产环境里面把单个的 1G 降低到 5M 带来的价值其实不大

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

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

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

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

© 2021 V2EX