0
redisキャッシュからエントリを削除する必要があります。 特定の値と一致する場合のみです。.NET Stackexchange.Redis:値によって条件付き削除?
可能であれば、最初に値を取得し、サーバーをチェックしてから削除するオーバーヘッドを避けたいと思います。
値に応じて削除を制限するためにチェックした削除コマンドにオプションがありません。
redisキャッシュからエントリを削除する必要があります。 特定の値と一致する場合のみです。.NET Stackexchange.Redis:値によって条件付き削除?
可能であれば、最初に値を取得し、サーバーをチェックしてから削除するオーバーヘッドを避けたいと思います。
値に応じて削除を制限するためにチェックした削除コマンドにオプションがありません。
Luaスクリプトを使用してRedis(クライアントとプログラミング言語の選択肢が少なくて済むように)で行うことができるのは、クライアントとサーバーを避けるためのものです。
local key = KEYS[1]
local val = ARGV[1]
local cur = redis.call('GET', key)
if cur == val then
return redis.call('DEL', key)
else
return 0
end
は、RedisのでLuaの上でより多くの洞察を得るEVAL
's documentationをチェックアウトするには:ここでは平等のための文字列の値をチェックし、もしそうであれば、キーを削除するサンプルスクリプトです。
ありがとうItamar!これは時間/ emazeからasaf(別名 '茶の男')です: – CodeToad
ちょっとAsaf、あなたもここに沸騰してクール、あなたはほとんど歓迎です:) –