场景如下:一个查询 memcached 缓存的简单网站。批处理作业每 10-15 分钟更新一次相同的缓存。使用该模式是否会出现任何问题(例如缓存未命中)?
我担心所有可能发生的比赛状况。例如,如果网站对 memcached 中缓存的对象执行 GET 操作,而同一对象被批处理作业覆盖,会发生什么?
我最初的直觉是,您应该能够从 memcached 缓存中读取/写入,而不会产生任何副作用(除了由于竞争条件而导致数据过时的可能性之外)。
关于 memcached 的常见问题解答:
memcached 是原子的吗?除了您可能遇到的任何错误之外,是的
命令在内部是原子的。同时发行多套
没有任何不良影响,除了最后一个是
棍子。
如果不了解更多关于您的具体情况,我将无法就是否可能发生缓存未命中提出建议,但我确实做了一个概括:缓存应该是查找数据的第一层,而不是唯一的层;我仍然会在缓存后面有一个数据库或其他一些源来处理所有缓存未命中。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)