我们基本上使用 memcache 来缓存查询结果。
由于其实施方式,失效是一场噩梦。从那以后,我们通过阅读邮件列表学习了一些使用 memcache 的技术,例如允许一组密钥组失效的技巧。知道的可以跳过下一段。。
对于那些不知道但感兴趣的人,诀窍是在您的密钥中添加一个序列号并将该序列号存储在 memcache 中。然后每次在你做你的“获取”之前,你都会抓住当前的序列号并围绕它构建你的密钥。然后,要使整个组无效,您只需增加该序列号。
所以无论如何,我目前正在修改我们的模型来实现这一点。
我的问题是..
我们不知道这种模式,我敢肯定还有其他我们不知道的。我已经搜索并且无法在网络上找到任何用于实现 memcache、最佳实践等的设计模式。
有人可以指出我这样的事情,甚至只是写一个例子吗?我想确保我们在新的重构中不会犯初学者的错误。