如何通过代码更改保持基于密钥的缓存工作?

时间:2017-07-20 13:18:23

标签: ruby-on-rails caching

我在我的Rails应用程序中实现key-based cache(这主要只是单页Javascript应用程序的API,所以我们不会缓存任何视图代码,只是结果计算成本高昂的方法。

我担心我进行代码更改的情况会最终影响缓存方法,从而产生不同的结果。由于代码更改不会使任何内容失效,因此我将提供过时的数据。

处理此问题的好方法是什么?如果我什么都不做,开发人员必须知道他们的代码更改何时会影响缓存方法,并在部署之前手动使缓存无效。

我知道Rails通过将视图模板的md5附加到缓存键来解决视图的这个问题。但它更难,因为这些不仅仅是观点。我认为,类似的事情是使用当前提交的哈希对每个缓存键进行版本化,但这会导致每当我们进行新提交时所有缓存键完全失效,这是不可接受的。

与其他类型的缓存相比,问题似乎并不特定于基于密钥,但我认为这是有用的上下文。

0 个答案:

没有答案