您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

将Redis数据同步到MySQL的最佳策略是什么?

将Redis数据同步到MySQL的最佳策略是什么?

您不需要破解任何东西;)

我不完全确定为什么您需要MysqL上的数据。如果我知道,也许会有一个更合适的答案。无论如何,作为通用答案,您可以使用redis键空间通知

您可以在键上订阅命令HSET,HMSET,HDEL和DEL,因此,每次删除键或设置或删除哈希值时,您都会收到通知

请注意,如果您错过任何通知,则将出现不一致的情况。因此,有时您可以仅使用SCAN命令浏览所有密钥,并检查MysqL是否需要更新。

一个策略可能是维护两个单独的结构。一个是带有值的哈希,另一个是所有值的ZSET,这些值按更新时间戳排序。使两种结构保持最新的最佳方法是编写两个或三个lua脚本(插入/更新和删除),这些脚本可对散列和zset进行原子操作。

然后,您可以定期在ZSET中查询时间戳比上次同步操作高的元素,获取所有已更新的密钥(它将包括删除的密钥,除非您想专门为它们保留第二个ZSET),然后通过键检索所有元素并同步到MysqL

希望它对您有用!

MySQL 2022/1/1 18:20:44 有474人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶