有没有支持批量和并行获取多个服务器的Python memcached客户端?
我经常需要获取一长串 N
个键的值,比如:
[1267, 56578, ... , 9800]
这些值存储在 M
个不同的 Memcached 服务器上。
我不想一个一个地发送 get()
请求,等着回应,然后重复 N
次。
有没有什么 Python 的 Memcached 客户端,可以让我一次性调用一个多重获取(multiple_get),把所有 N
个键分配到各自的服务器上,然后对每个 M
个服务器发送一个批量请求,最后把所有服务器的结果收集起来,并且这一切都能并行进行?
如果有的话,我该怎么使用这个功能呢?
1 个回答
2
你可以使用 python-memcached: Python 或者 pylibmc - Python的memcached客户端,这两个库都有一个叫 get_mult()
的方法,可以用来一次性获取多个数据。这样的话,获取数据的操作就可以同时在每个服务器上进行,不用一个一个等着。
你也可以看看 用get_multi批量请求 的相关内容。