찾다

 >  Q&A  >  본문

redis持久化问题

如果用redis存储的数据都是有时间的,那么时间过期以后,

  1. redis是否会自动清除过期的key

  2. 如果不自动清除,那么岂不是持久化出来的文件会越来越大。

  3. 如果是手动清除,怎么清除。

  4. 我发现我重启一下redis可以减小存储的文件,是不是说重启可以清除过期的key。

用的是redis的RDB,如果使用AOF的话,是不是解决方案也是一样的。

ringa_leeringa_lee2770일 전864

모든 응답(2)나는 대답할 것이다

  • 巴扎黑

    巴扎黑2017-04-25 09:04:36

    redis의 만료 키 삭제 메커니즘에 대해 논의하기 위해 오래 전에 쓴 글을 소개합니다

    그럼 질문으로 돌아가세요.

    1. Redis는 지연 삭제 및 일반 삭제를 통해 만료된 키를 자동으로 지웁니다.

    2. 모든 Redis에는 가끔씩 Redis 데이터베이스를 확인하고 만료된 키를 삭제하는 데 도움이 되는 정기적인 삭제 메커니즘이 있습니다.

    3. 수동으로 삭제하시려면 del이나 다른 방법으로 삭제해 주세요.

    4. redis 데이터는 메모리에 저장되기 때문에(지속성이 있지만 지속성의 목적은 백업일 뿐), 재시작 후에는 메모리에 있던 데이터가 사라지고 파일도 자연스럽게 작아지게 됩니다.

    RDB와 AOF는 삭제 메커니즘과 아무 관련이 없으며 단지 지속성 방법일 뿐입니다.

    회신하다
    0
  • PHPz

    PHPz2017-04-25 09:04:36

    키 값을 생성할 때 만료 시간을 설정할 수 있으며, 명령을 사용하여 지정된 키를 삭제할 수도 있습니다. 또한 다시 시작하여 Redis 저장소 메모리의 데이터를 삭제할 수도 있습니다.

    회신하다
    0
  • 취소회신하다