https://mp.weixin.qq.com/s/K9KVJR5sW7bsYrF4_dUV5g
这篇文章从关键设计和内部实现来分析,希望对于想知道如何实现磁盘类型 Redis 及想熟悉 Kvorcks 设计和实现的人带来一些帮助。
1 gabon 2022-03-02 09:19:56 +08:00 via iPhone 在用,性能基本没有很大损失情况下成本降低了很多。 |
![]() | 4 hulk OP @gabon cool, 如果没有加入 Kvrocks 社区交流群可以加我微信: hulkdev, 我拉你进群,现在超过 200 个人,只能邀请。 |
5 mekingname 2022-03-02 10:43:29 +08:00 请问 Kvrocks 在性能上,有跟 Redis 做过对比吗?有哪些优势哪些不足? |
![]() | 6 hulk OP @mekingname kvrocks 项目的 README 里面有一些 benchmark 数据,然后吞吐由于是多线程会比 Redis(包含 6.0 以上的多线程 IO)高,但读延时如果 miss cache 到磁盘肯定延时会比 Redis 高一些。本身是作为 Redis 的互补而不是替换,磁盘类型相比于 Redis, 单实例大小可以几百 G 同时成本基本是 Redis 1/10 以下。 |
![]() | 7 zhengxiaowai 2022-03-02 11:33:33 +08:00 加微信了,看看能不能贡献几行代码 :-) |
![]() | 8 hulk OP @zhengxiaowai wow ,太期待了~ |
9 aper 2022-03-02 11:55:39 +08:00 和 Pika 比有什么优势呢? |
![]() | 10 hulk OP @aper 之前 GitHub Discussion 上由一个讨论: https://github.com/KvrocksLabs/kvrocks/discussions/319 整体上,对于大多数可能关注的是功能的差异。除此了上面的讨论之外我自己觉得最重要的几个点: * 社区是足够开放或者更加遵循开源准则,社区共识大于代码,尽量所有设计和讨论都在社区进行,包含 roadmap * 对于代码的态度,至少 Kvrocks 不管在 PR 合并再 Commit Log 都是很严谨的讨论和对待 * 明确的 roadmap, 社区要有明确的方向,而不是走一步看一步 |
11 linksNoFound 2022-03-02 14:13:59 +08:00 考虑过磁盘寿命的影响吗 |
![]() | 12 hulk OP @linksNoFound Redis 也是一样,靠复制和集群分配来解决可用性问题 |
13 linksNoFound 2022-03-02 15:14:41 +08:00 @hulk 不,频繁读写状态下,固态集群会高速损失 PE 寿命,磁盘集群会影响磁头和盘片的寿命。redis 在内存常驻,内存是易失性闪存,和固态不一样,内存本身就是能承载高速读写的,对寿命影响很小。 |
![]() | 14 hulk OP 嗯,其实我的意思是高可用不会依赖单机硬件,另外 Redis 数据全内存没问题,重启加载的 RDB/Aof 还是从磁盘恢复,所以也是同样的问题。 |
15 sampeng 2022-03-02 17:13:50 +08:00 这个思路挺好的。。其实 99%的业务不需要 redis 那么极端的性能优化。需要的,成本是吃不消的 |
![]() | 16 hulk OP 嗯,是的。除了要求低延时的,中间还有很多高容量,但延时可以有一点妥协空间的场景。 |