
关于 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 是节点的倍数 |
1 saka0609 2024-05-06 09:20:18 +08:00 正在用 |
3 momo31 2024-05-06 09:42:17 +08:00 在用在用,跟动不动占用 1G 多内存的 nacos 相比,r-nacos 几十 M 真的非常推荐。 |
4 momo31 2024-05-06 09:43:25 +08:00 有个问题,admin 管理界面的验证码能不能设置成可关闭,每次登录都要输入太麻烦了 |
5 suqiuluck 2024-05-06 09:43:31 +08:00 不错 |
6 heqingpan OP @cksspk 这个目前也是支持的,有个配置 RNACOS_ENABLE_NO_AUTH_CONSOLE 可以开启无校验控制台。具体的你也可以看对应的文档说明。 |
7 28Sv0ngQfIE7Yloe 2024-05-06 09:59:27 +08:00 请问启动更快和占用更小都有数据体现,readme 里的「运行更稳定」是通过什么指标得出的结论? |
8 muyuanqiang7 2024-05-06 10:09:44 +08:00 开发环境准备试试 |
9 lllllliiii 2024-05-06 10:10:33 +08:00 已经用到开发环境 3 ~ 4 个月了,体验不错 |
10 heqingpan OP @Morii 启动更快是指启动后,在一秒内可以正常访问接口,nacos 的话自测差不多在 8 秒左右才能正常访问。(这个是人个使用记录,没有用工具做严格对比) 资源占用更小,上面已经给出例子:接入接近 5 千个配置,450 个服务实例,服务使用的内存在 15M 左右。nacos 默认启动后内存就大于 600M 。 运行更稳定,在连续长时间运行(超过一个月)和经过压测场景下,r-nacos 的(内存与 cpu )资源占用都很稳定。nacos 的内存起伏比较大,压测时有时还遇到未及时响应的情况。 |
11 28Sv0ngQfIE7Yloe 2024-05-06 10:17:17 +08:00 |
12 ilaipi 2024-05-06 10:25:09 +08:00 大佬,为啥两类 docker 包会影响运行性能? |
13 PaulSamuelson 2024-05-06 10:38:28 +08:00 天下苦 spring-boot 久已 |
14 heqingpan OP |
16 heqingpan OP |
17 justseemore 2024-05-06 11:33:49 +08:00 mark 一下, 很适合当自己的配置中心. |
18 twofox 2024-05-06 11:36:14 +08:00 我也在学 rust 。但是作为一个 Java web 开发,发现用 rust 开发一个 web 应用,生态好像还是不行。 rust 不适合用来开发这些业务多的 web 项目,例如 BPM 流程引擎、对 office 文件的一些操作库 可能是我接触的少,不知道 rust 有哪些好用的库 |
19 Xrall 2024-05-06 11:39:41 +08:00 看了一下介绍以及评论感觉还可以 。开发测试环境可以用来试试。没有 nacos 那些一堆莫名其妙的破问题就好。特别是迭代问题 nacos 真的让人糟心。 |
20 rrfeng nbsp; 2024-05-06 11:46:33 +08:00 alibaba/nacos ? |
21 povsister 2024-05-06 11:53:12 +08:00 天下苦 java 久矣 |
22 heqingpan OP @twofox 我对 rust 库的了解也不算很多,一般都是以目标场景为导向去找对应的库。有些能找到合适的;有些找到但不完全够用,这时要自己补充;有些就是没有自己直接写一个。目前生态很多库基本都有了 关于 web 开发,我主要以前后端方式写。这种模式,只要使用 http 接口即可。有很多成熟的框架,比如 axum,actix-web 等。 你提的流程引擎和 office 操作库,我之前没有用到,没去了解。你可以自己到 crates 去找找。 |
23 heqingpan OP @rrfeng 是的。 r-nacos 是用 rust 重写 alilaba/nacos ,协议完全兼容,支持使用 nacos 的应用不改代码直接平迁到 r-nacos 。 |
24 heqingpan OP |
25 IdJoel 2024-05-06 12:19:02 +08:00 太好了,真不喜欢 java 那套东西 |
26 rlds 2024-05-06 12:40:35 +08:00 个人使用受资源限制,占用太大的 nacos 是有点吃不消,r-nacos 能够将占用限制到 10 多 M ,那还是可以先用来做开发试用,看看具体的稳定性,以及会不会出现什么意料之外的 bug ,真的没啥重大问题,稳定后还是可以考虑上生产环境的。 |
27 heqingpan OP |
28 monkeydream 2024-05-06 14:05:31 +08:00 这个可以有,生产部署 3 个 java 的 nacos 内存直接 5-6 个 G 了 |
29 someonedeng 2024-05-06 14:49:56 +08:00 这资源占用爱了 |
30 cnzjl 2024-05-06 15:05:10 +08:00 mark,这类中间件使用 rust 重写真是太棒了 |
31 huzhizhao 2024-05-06 15:19:33 +08:00 支持一下,看这个占用是很棒的啊。 可惜公司的技术栈不是走这个的,不然可以推荐一下给老大了。 |
32 NXzCH8fP20468ML5 2024-05-06 15:32:22 +08:00 via Android 早就该用 rust 重写各大中间件了 这里点名 kafka ,hdfs ,hbase ,es 。 |
33 heqingpan OP |
35 heqingpan OP |
36 AkaHero 2024-05-06 16:31:16 +08:00 正在用,作为个人和小型公司的方案非常合适,给开发者点赞顺便 rust yyds |
37 chenset 2024-05-06 16:44:34 +08:00 哇哦. nice !!! |
38 aa51513 2024-05-06 16:49:47 +08:00 via Android 我看了一下项目介绍以及诸位的评论,感觉很不错的样子 。准备在测试环境试试。 |
39 a5X77vajGRyLA2aF 2024-05-06 17:02:56 +08:00 感觉 rust 才是真正的 better c . 支持大佬使用 rust 重构中间件,确实能起到节省内存效果。 |
40 RainCats 2024-05-06 17:10:31 +08:00 内存占用这么小?果断试一下,开发用的老机子,每一兆内存都是宝贵的,再次声讨一下,垃圾公司 |
41 NeedI09in 2024-05-06 17:28:47 +08:00 可以,我去给你点个 |
44 EricSTG 2024-05-07 14:56:43 +08:00 |
46 heqingpan OP 哪个页面,是指登陆页面吗? |
47 gitxuzan 2024-09-09 16:56:20 +08:00 特别不喜欢 java 那套中间件,内存太大了,谢谢博主的开源产品 |