我将Redis仅用作缓存服务器,因此RDB和AOF被关闭,因为我已经有一个DB就位,并且有2层做同样的事情是一种过度杀伤。
虽然当数据库是唯一的事实来源时,此设置可以正常运行,但我的问题更多的是当您使用Redis跟踪game scores, pages views, analytics from a webhook, etc..
截至目前,我们对Redis没有任何持久性,这意味着如果服务器崩溃/重启所有这些数据都已消失。
那么保持数据库与Redis数据同步的最佳方法是什么?
可能会设置一个cron作业,每隔1分钟从Redis获取数据并更新数据库。
可能不是每分钟都打断Redis,因为它的单线程性质和为了避免任何数据丢失,我们可以将数据添加到大小= 50或其他时运行的队列,然后更新数据库
我正在使用laravel,所以任何关注其生态系统的例子都会受到赞赏,但也欢迎任何想法。