使用多个客户端访问具有Ketama一致密钥分发的内存缓存

时间:2014-06-24 01:54:42

标签: python memcached tornado libmemcache python-memcached

我无法使用不同的Python客户端从memcache服务器读取,然后用于将值写入memcache。

我有一个使用'ketama'行为使用pylibmc写入缓存的进程。我有一个不同的服务,从Tornado IOLoop异步读取内存缓存。我已经定制tornado-memcache来使用python-ketama模块查找服务器,该模块只是通用C库libketama的包装器。

相关的pylibmc客户端初始化代码:

mc = pylibmc.Client(nodes, behaviors={"no_block": True,
                                      "tcp_nodelay":True,
                                      "ketama": True,
                                      "hash": 'md5'})

有没有人有经验做类似的事情(多个客户)?似乎两个客户端使用的哈希连续体非常不同,或者密钥被不同地散列/检索(两个客户端都应该使用md5)。

修改 我已经编写了测试来证实这是一个连续问题。

0 个答案:

没有答案