redis是基于内存的,所以存在当程序挂掉数据丢失的可能。我目前想到的备份方案是,做一个主从,从库做定时dump。
但是dump是不是实时的,而是隔一段时间做一次,所以这期间还是有丢失数据的可能。是否有方案能实时备份redis的数据,让redis出了问题以后快速恢复。
小伙看你根骨奇佳,潜力无限,来学PHP伐。
AOF (追加専用ファイル) を有効にします。
AOF
データ損失の問題は、Redis のマスター/スレーブ レプリケーションによって解決できます。ただし、データ損失のリスクと範囲を軽減する方法はあると思います。チケットの取得は、典型的な同時実行性の高いシナリオです。チケットのインベントリ情報のみをメモリに保存し、他の情報はより信頼性の高いデータベースを介して保存することを検討できます。
具体的な解決策: 1. Redis はマスター/スレーブ レプリケーションを可能にし、外部読み取りサービスを提供するときに 3 つ以上のスレーブを使用して単一点の問題と負荷分散を解決できます。 2. クラッシュしたデータ回復ソリューションに関しては、サービスがクラッシュした場合、キュー操作からログアウトしてログを記録し、再起動後にログからインベントリを迅速に復元できます。 3. データ損失のリスクを軽減するソリューション。たとえば、redis のキュー データ構造を使用してチケットの在庫を保存すると、チケットの取得関係がデータベースに保存され、注文と支払いが行われます。 4. 実際に使ってみると、redis がクラッシュする確率は低いですが、クラッシュ後のデータ復旧は非常に面倒です。したがって、データが非常に重要である場合は、そのデータをメモリ データベースにできるだけ置かないように実装することをお勧めします。
AOF
(追加専用ファイル) を有効にします。データ損失の問題は、Redis のマスター/スレーブ レプリケーションによって解決できます。ただし、データ損失のリスクと範囲を軽減する方法はあると思います。チケットの取得は、典型的な同時実行性の高いシナリオです。チケットのインベントリ情報のみをメモリに保存し、他の情報はより信頼性の高いデータベースを介して保存することを検討できます。
具体的な解決策:
1. Redis はマスター/スレーブ レプリケーションを可能にし、外部読み取りサービスを提供するときに 3 つ以上のスレーブを使用して単一点の問題と負荷分散を解決できます。 2. クラッシュしたデータ回復ソリューションに関しては、サービスがクラッシュした場合、キュー操作からログアウトしてログを記録し、再起動後にログからインベントリを迅速に復元できます。 3. データ損失のリスクを軽減するソリューション。たとえば、redis のキュー データ構造を使用してチケットの在庫を保存すると、チケットの取得関係がデータベースに保存され、注文と支払いが行われます。 4. 実際に使ってみると、redis がクラッシュする確率は低いですが、クラッシュ後のデータ復旧は非常に面倒です。したがって、データが非常に重要である場合は、そのデータをメモリ データベースにできるだけ置かないように実装することをお勧めします。