>  Q&A  >  본문

可信赖的redis备份方案

redis是基于内存的,所以存在当程序挂掉数据丢失的可能。我目前想到的备份方案是,做一个主从,从库做定时dump。

但是dump是不是实时的,而是隔一段时间做一次,所以这期间还是有丢失数据的可能。是否有方案能实时备份redis的数据,让redis出了问题以后快速恢复。

伊谢尔伦伊谢尔伦2760일 전631

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

  • 迷茫

    迷茫2017-04-21 11:19:01

    AOF(추가 전용 파일)을 활성화합니다.

    회신하다
    0
  • 大家讲道理

    大家讲道理2017-04-21 11:19:01

    데이터 손실 문제는 Redis의 마스터-슬레이브 복제를 통해 해결할 수 있습니다. 하지만 데이터 손실의 위험과 범위를 줄일 수 있는 방법이 있다고 생각합니다. 티켓 확보는 일반적인 동시성 시나리오로 티켓 인벤토리 정보만 메모리에 저장하고 기타 정보는 보다 안정적인 데이터베이스를 통해 저장하는 것을 고려할 수 있습니다.

    구체적인 솔루션:
    1. Redis는 마스터-슬레이브 복제를 가능하게 하며 외부 읽기 서비스 제공 시 2개 이상의 슬레이브를 사용하여 단일 지점 문제를 해결하고 로드 밸런싱을 수행할 수 있습니다.
    2. 충돌 데이터 복구 솔루션은 대기열 작업에서 로그아웃하여 기록할 수 있으며, 서비스가 충돌한 경우 재시작 후 로그를 통해 신속하게 인벤토리를 복원할 수 있습니다. 3. 데이터 손실 위험을 줄일 계획입니다. 예를 들어, Redis의 대기열 데이터 구조를 사용하여 대기열을 성공적으로 종료하면 티켓 획득 관계를 데이터베이스에 저장한 다음 주문하고 결제합니다. 4. 실제 사용 경험에서 Redis가 충돌할 확률은 낮지만 충돌 후 데이터를 복구하는 것은 정말 번거로운 작업입니다. 따라서 사용 시나리오를 살펴보는 것이 가장 좋습니다. 데이터가 매우 중요한 경우에는 데이터를 데이터베이스에 저장하지 않는 것이 좋습니다.

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