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

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

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

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

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

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

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

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

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

希望它对您有用!



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4973428.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-14
下一篇 2022-11-13

发表评论

登录后才能评论

评论列表(0条)

保存