我遇到了一个问题,我有一个python-memcached客户端连接到ElastiCache上的3个memcached节点。我有一些具有无限TTL的缓存值,并且在更新数据源时会覆盖它们。缓存也写入缓存未命中。
问题有时是memcached返回的旧缓存值。我最好的猜测是:
这里是失败导致选择新服务器的行: https://github.com/linsomniac/python-memcached/blob/release-1.57/memcache.py#L413
我查看了pymemcached的哈希客户端,我认为它会做同样的事情:暂时删除一个memcached主机并尝试使用另一个主机。
当主机永久删除时,这是有道理的,但当主机可能几秒钟不可用时,对我没有意义。我错过了什么吗?无限TTL是一个memcached反模式吗?