如果用redis存储的数据都是有时间的,那么时间过期以后,
redis是否会自动清除过期的key
如果不自动清除,那么岂不是持久化出来的文件会越来越大。
如果是手动清除,怎么清除。
我发现我重启一下redis可以减小存储的文件,是不是说重启可以清除过期的key。
用的是redis的RDB,如果使用AOF的话,是不是解决方案也是一样的。
巴扎黑2017-04-25 09:04:36
かなり前に書いた、redisの期限切れキー削除メカニズムについての記事を紹介します
それでは質問に戻ります:
Redis は、遅延削除と定期的な削除を通じて、期限切れのキーを自動的にクリアします。
これは避けられません。すべての Redis には、Redis データベースを時々チェックして、その中の期限切れのキーを削除するのに役立つ定期的な削除メカニズムがあります
手動でクリアしたい場合は、delまたは他の方法で削除できます。
redisのデータはメモリ上に保存されるため(永続化はありますが、永続化の目的はバックアップのみです)、再起動するとメモリ上のデータはなくなり、当然ファイルは小さくなります。
RDB と AOF は削除メカニズムとは何の関係もなく、単なる永続化メソッドです。
PHPz2017-04-25 09:04:36
キー値を作成するときに有効期限を設定することもできます。また、コマンドを使用して、再起動することで Redis ストレージ メモリ内のデータを削除することもできます。