8

私は現在、「set」構造を使用してredisを使用しています。

空の「セット」を自動的にクリーンアップできるかどうか知りたいですか?

それ以外の場合は、定期的に空の「セット」をクリーンアップするcron/プロセスを見つけます


アップデート:

より一般的な質問ですが、「(nil)」と「(空のリストまたはセット)」の間に差分(メモリ使用量)があります

例:

sadd x 1
srem x
smembers x
(empty list or set)

また

sadd x 1
del x
smembers x
(nil)
4

1 に答える 1

9

これはすでに自動化されています。セットが空の場合、名前空間から削除されます。

> flushall
OK
> sadd x 1 2 3
(integer) 3
> keys *
1) "x"
> srem x 1 2 3
(integer) 3
> keys *
(empty list or set)

この動作の恩恵を受けるために特別なことをする必要はありません。

2番目の質問に答えるには、(nil)または(空のリストまたはセット)はクライアントプログラムの単なる解釈です。どちらの場合も、Redisサーバーでは、エントリが物理的に削除され、関連するメモリが解放されています。

于 2012-12-11T12:09:25.523 に答える