なぜ永続性が必要なのか?
通常、すべての Redis データはメモリに保存されます。データベースに障害が発生して再起動されると、Redis クラスターや Redis 内であっても、すべてのデータが失われます。 Sentinel モードでのマスター/スレーブ同期データの回復にはまだ時間がかかります。
永続化機能により、プロセスの終了によるデータ損失を効果的に回避でき、次回の再起動時に以前に永続化されたファイルを使用してデータを回復できます。
Redis 永続性を使用すると、データはディスクに保存されます。データベースの増分同期を実行する場合、必要な時間は完全同期を実行する場合よりもはるかに短くなります。障害からのデータ回復は、運用環境において非常に重要な役割を果たします!
Redis データの永続性には 2 つのオプションがあります
Redis の永続性には 2 つのオプションがあります:
RDB は、現時点のすべての Redis データを定期的にディスクに保存するスナップショット データ ストレージです。
AOF は、Redis の書き込み操作をリアルタイムでディスクに記録する追加ベースのストレージ方法です。
これら 2 つのソリューションの違いは何ですか? 1 つずつ説明しましょう~
1. RDB 永続性
Redis の書き込みによって RDB 永続化条件がトリガーされると (dgsave コマンドを手動で実行することでもトリガーできます)、Redis のメイン プロセスは子プロセスをフォークして一時的な RDB ストレージ ファイルを作成します。ファイルの作成が完了すると、一時的なファイル名の変更により、元の RDB ファイルが置き換えられます。 RDB ファイルは、災害復旧のバックアップとデータのリカバリに非常に適した単一のファイルです。RDB ファイルを使用したデータベースの復元には時間がかかりません。通常、1G スナップショット ファイルをメモリにロードするのにかかる時間は約 20 秒だけです。
欠点:
RDB 永続性は、次のストレージがまだトリガーされていないときに Redis データを定期的に保存するだけです Redis がクラッシュした場合、メモリ内のすべてのデータが失われます。
また、データ量が多い場合、サブプロセスをフォークする動作により多くのCPUが消費され、以下の監視グラフに示すように、RDB永続化が毎回トリガーされます。 1800 番台は Redis の CPU を大量に消費します。 2 番目に長いブロックは、子プロセスのフォーク中に発生する可能性があります。
パラメータ:
保存オプション 空の保存 "" として設定されている場合、 RDB 永続化を有効にするためのトリガー条件を複数設定できます。たとえば、1 回の書き込みで 900 秒以内にスナップショットがトリガーされ、10 回の書き込みで 300 秒以内にスナップショットがトリガーされます。これは、独自の Redis 書き込み条件に応じて自由に設定できます. パフォーマンスとデータ セキュリティのバランスを保ちます。
stop-writes-on-bgsave-error を有効にすることをお勧めします。redis bgsave でエラーが発生すると、クライアントのリクエストは拒否されます。Bgsave の失敗は、通常、ディスクまたはメモリの空き容量が不足し、監視が不十分であることが原因で発生します。データのセキュリティを向上させるために必要です。
2. AOF の永続性
AOF は、Redis 書き込み操作のコマンドを保存することで永続性を実現します。永続化に AOF を使用すると、Redis データのセキュリティが大幅に向上します。異常なダウンタイムが発生した場合、最大 1 秒間のデータ損失が発生します。 Redis の書き込み操作は AOF ファイルに記録され、ファイルの形式は明確で理解しやすく、データの再構築に便利なように簡単に変更できます。
欠点:
redis 書き込みが増加すると、AOF ストレージ ファイルがますます大きくなり、データベース データに影響を及ぼします。回復時間やディスク容量などの影響があるため、AOF ファイルのサイズを減らすために AOF 書き換えを構成する必要があります。ここでは、デフォルトの 2 つのトリガー条件構成を使用するか、BGREWRITEAOF コマンドを手動で呼び出してトリガーすることができます。
パラメータ:
appendonly は、AOF 永続性を有効にするかどうかを設定します。
appendfsync には、always/everysec/no の 3 つの永続モードがあります。これは、データ ストレージの速度とセキュリティを考慮し、データを毎秒ディスクに同期する Everysec として構成されます。
3. RDB と AOF 永続化の長所と短所の比較
どちらの方法にも独自のメリットがあります。2 つの Redis データ永続化方法を比較してみましょう:
4.
を選択すると、Redis は最初に AOF ファイルが存在するかどうかを確認し、存在しない場合は RDB のロードを試みます。ファイル。
実際の運用環境では、データ量、データ セキュリティに関するアプリケーション要件、予算制約などに応じて、さまざまな状況下でさまざまな永続化戦略が使用されます。この文は次のように書き換えることができます: 永続性を使用しないことを選択することも、個別の RDB または AOF 永続性を使用することも選択することも、RDB と AOF 永続性を同時に有効にすることもできます。
PS: 永続性の選択は、Redis のマスター/スレーブ戦略と合わせて検討する必要があります。マスター/スレーブのレプリケーションと永続性にはデータ バックアップの機能もあり、ホスト マスターとスレーブ スレーブは独立して永続性ソリューションを選択できるためです。 。
以上がRedis の永続化メソッドは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

redisactsassassadatastoreandaservice.1)asadatastore、itusesin memorystorage for fastorations、supporting variousdatastructureSlike-key-valuepairsandsortedsets.2)asaservice、iteasruascruascriptingrupting criptingforceptingpurplecomplecomplecprexoperations

他のデータベースと比較して、Redisには次の独自の利点があります。1)非常に速い速度、および読み取り操作は通常、マイクロ秒レベルにあります。 2)豊富なデータ構造と操作をサポートします。 3)キャッシュ、カウンター、公開サブスクリプションなどの柔軟な使用シナリオ。 Redisまたはその他のデータベースを選択する場合、特定のニーズとシナリオに依存します。 Redisは、高性能および低遅延のアプリケーションでうまく機能します。

Redisは、データストレージと管理において重要な役割を果たしており、複数のデータ構造と持続性メカニズムを通じて最新のアプリケーションの中核となっています。 1)Redisは、文字列、リスト、コレクション、注文されたコレクション、ハッシュテーブルなどのデータ構造をサポートし、キャッシュや複雑なビジネスロジックに適しています。 2)RDBとAOFの2つの持続方法を通じて、Redisは信頼できるストレージとデータの迅速な回復を保証します。

Redisは、大規模なデータの効率的なストレージとアクセスに適したNOSQLデータベースです。 1.Redisは、複数のデータ構造をサポートするオープンソースメモリデータ構造ストレージシステムです。 2.キャッシュ、セッション管理などに適した、非常に速い読み取り速度と書き込み速度を提供します。 4.使用例には、基本的なキー値ペア操作と高度なコレクション重複排除関数が含まれます。 5.一般的なエラーには、接続の問題、データ型の不一致、メモリオーバーフローが含まれるため、デバッグに注意する必要があります。 6.パフォーマンス最適化の提案には、適切なデータ構造の選択とメモリ排除戦略の設定が含まれます。

現実世界でのRedisのアプリケーションには、1。キャッシュシステムとして、データベースクエリを加速し、2。Webアプリケーションのセッションデータを保存するには、3。リアルタイムランキングを実装する4。メッセージ配信をメッセージキューとして簡素化する。 Redisの汎用性と高性能により、これらのシナリオで輝きます。

Redisは、高速、汎用性、豊富なデータ構造のために際立っています。 1)Redisは、文字列、リスト、コレクション、ハッシュなどのデータ構造をサポートし、コレクションを注文します。 2)メモリを介してデータを保存し、RDBとAOFの持続性をサポートします。 3)Redis 6.0から始めて、マルチスレッドI/O操作が導入されました。これにより、高い並行性シナリオでパフォーマンスが向上しました。

redisisclassifiedsaNosqldatabasebasesakey-valuedataModelinsteaded ofthetraditionaldatabasemodel.itoffersspeedand andffficability、makingidealforreal-timeaplications andcaching、butmaynotbesbesutable fors cenariois requiring datientiantientioniity

Redisは、データをキャッシュし、分散ロックとデータの持続性を実装することにより、アプリケーションのパフォーマンスとスケーラビリティを向上させます。 1)キャッシュデータ:Redisを使用して頻繁にアクセスしたデータをキャッシュして、データアクセス速度を向上させます。 2)分散ロック:Redisを使用して分散ロックを実装して、分散環境での操作のセキュリティを確保します。 3)データの持続性:データの損失を防ぐために、RDBおよびAOFメカニズムを介してデータセキュリティを確保します。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

WebStorm Mac版
便利なJavaScript開発ツール

ホットトピック









