1

我想用redis作为mysql的缓存,主要思路是:

询问

  1. 从 redis 读取

  2. 如果不存在,则从mysql中读取,并添加到redis缓存中

添加

  1. 直接写入mysql

更新&删除

  1. 写入mysql
  2. 使redis的缓存失效

我的问题是:如何使缓存无效?

我知道我可以删除它,或者设置过期时间,这是通常的方式,还是有任何标准方法可以使缓存失效?

谢谢!

4

1 回答 1

2

您需要一个触发器来告诉 redis mysql 数据已更新。

  1. 这可以是您代码的一部分,每当您将数据保存到 mysql 时,您也会使 redis 缓存无效。

  2. 您可以使用http://debezium.io/之类的流来捕获数据库中的更改,并采取必要的操作,例如使缓存无效。

于 2017-11-20T10:25:40.623 回答