5

私は最近Redisで遊んでいて、一度に複数のキーを監視する方法を考えています。以下のようなものはアトミックでしょうか?

次のコードはredis-pyを使用しています。

 while True:            
        try:
            pipe.watch(key)
            pipe.watch(another_key)
            pipe.multi()
            pipe.set(key, value)
            pipe.set(another_key, another_value)
            pipe.execute()

            break
        except redis.WatchError:
            continue

        finally:
            pipe.reset()
4

1 に答える 1

7

redisは複数のキーをサポートしています。はい:http ://redis.io/commands/watch

Pythonクライアントのドキュメントには、パイプラインコマンドはアトミックに実行されると記載されていますが、それでもWATCH複数の引数を持つ単一の呼び出しを使用します。

pipe.watch(key, another_key)
于 2013-03-19T15:56:10.717 に答える