如何使用mysql使redis缓存无效?

时间:2017-11-20 09:31:09

标签: mysql caching redis invalidation cache-invalidation

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

查询

  1. 从redis阅读

  2. 如果不存在,请从mysql中读取,然后添加到redis缓存

  3. 添加

    1. 直接写入mysql
    2. 更新&安培;删除

      1. 写入mysql
      2. 使redis的缓存无效
      3. 我的问题是:如何使缓存无效?

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

        谢谢!

1 个答案:

答案 0 :(得分:2)

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

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

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