在多个应用服务器上阻止页面缓存过期

Pra*_*oya 7 caching ruby-on-rails

我们如何使在负载均衡器后面运行的多个应用服务器上的rails页面缓存失效?我尝试实现缓存清理程序,但它只扫描接收请求的应用程序服务器上的缓存.缓存的页面存储在公共目录中.

iGE*_*GEL 0

您可以通知所有服务器清理缓存(例如通过特殊的 URL 或数据库,在这种情况下您需要一个定期检查数据库并使缓存失效的作业),或者定期使缓存失效通过 cronjob (建议您在任何时候使用)。

编辑:另一种解决方案是通过 NFS 或类似的方式在所有计算机上共享公共目录。这样,每个服务器都可以使所有机器的缓存失效。