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