トランザクションを使用してクライアント側で簡単に実装できます。
WATCH hkey
isKeyExists = EXISTS hkey
if isKeyExists
MULTI
HSET hkey field value
EXEC
else
UNWATCH
WATCH後にhkeyが削除されると、トランザクションは失敗します。
Redis2.6で導入されたスクリプトを使用することもできます。
トランザクションを使用してクライアント側で簡単に実装できます。
WATCH hkey
isKeyExists = EXISTS hkey
if isKeyExists
MULTI
HSET hkey field value
EXEC
else
UNWATCH
WATCH後にhkeyが削除されると、トランザクションは失敗します。
Redis2.6で導入されたスクリプトを使用することもできます。