redis客户端管道在twemproxy环境中不起作用

时间:2013-12-27 04:10:20

标签: redis redis-py twemproxy

我使用redis-py来操作redis,我们的环境使用twemproxy作为redis代理。但是当连接到twemproxy时,看起来clinet管道不起作用。

import redis

client = redis.StrictRedis(host=host, port=port, db=0)
pipe = client.pipeline()
pipe.smembers('key')
print pipe.execute()

执行方法时抛出异常

redis.exceptions.ConnectionError: Socket closed on remote end

在twemproxy环境中,客户端管道不起作用或者是redis-py的问题?

2 个答案:

答案 0 :(得分:2)

Bec twemproxy不支持所有redis命令。

以下是实际支持的命令列表https://github.com/twitter/twemproxy/blob/master/src/proto/nc_redis.c

答案 1 :(得分:1)

redis-py管道默认使用事务,试试这个:

pipe = r.pipeline(transaction=False)