简单了解了一下 Redis 中的消息发布订阅机制

36 阅读1分钟

现在我计划制作一个简单的 Key-Value 数据库来推进我在数据库领域的学习,感谢 zhuanlan.zhihu.com/p/145050842 ,让我差不多对于 Redis 中的订阅-发布有了个大致的理解。
在这里插入图片描述在传统的情况下,我们往往喜欢跟踪某一部分数据项的变化(一般体现为数据表,这点在关系型数据库中,尤其多)

但是,在 Redis 中,所有的数据读写,实际上都发生于公共的数据表上,同时数据表以“Key-value” 的形式进行组织

KeyValue
KeyValue

在这种情况下,如果只是跟踪一条“key”的话,实际上是不明智的,因为它随时有可能会被删除掉。
(而传统的跟踪数据表的,这方面顾虑会小很多,因为删除整个表,一般是不会有的)
(也有一种思路,就是把多个 Key-Value 组织成一个“列表”,实际上就是构建一个小数据表,但很明显,Redis 并没有采纳这种思路)

Redis 给出的替代方案,叫做 “消息订阅” 机制,换而言之,这些数据操作的信息,会以消息的形式,一条条放入一个消息池子之中,其它的客户端,就依靠这个消息池子的东西,顺利掌握动态与变化。

我觉得这个思路对于我打算制作的玩具数据库是有帮助的,因为我也希望它是可以支持集群部署的。

不过在此之前,我认为我需要去查看 PostgreSQL 流复制的有关知识。