基本的なデータ構造
文字列: 通常の設定と取得、単純な KV キャッシュ、カウンター、およびユーザー セッションの共有。
ハッシュ: Map と同様、一般に構造化データ (単純なオブジェクト) を格納します。ハッシュには比較的単一のアプリケーション シナリオがあります (現在のオブジェクトの内部には多数のオブジェクトがネストされており、これは適切ではありません)ハッシュの場合) 。
List: 順序付きリスト (挿入時の順序)
Message Queue: プロデューサーは Lpush を渡し、複数のコンシューマーは BRpop を使用してデータの「取得」をブロックしますリストの最後にあります。
記事一覧データのページネーション表示:lrangeコマンドを使用して、Weiboなどの特定の閉じた範囲内の要素を読み出し、下にスライドしてページを更新します。
Set: 順序なしコレクション、自動重複排除。集合、和集合、および差分演算を実行するには set を使用します。たとえば、2 人の人が共通の友人であるとします。
StoredSet: 並べ替え付きのセット
Bit-Map によって実装された BloomFilter: ブルーム フィルター。この情報をデータベース化します。
永続性
RDB: 完全なイメージ永続性、永続化には長い時間がかかり、データ回復速度は速いですが、リアルタイム性は十分ではありません
AOF: 増分永続性。オペレーション コードは毎秒またはオペレーションごとに AOF ファイルの末尾に追加され、データの回復時間は遅くなります。
電源が途中で切れた場合はどうなりますか?
AOF ログの同期属性の設定によりますが、パフォーマンスを追求しない場合は、ディスクは書き込み命令ごとに同期されるため、データが失われることはありません。一般的には 1 秒 1 時間などの時間同期が使用されますが、このとき失われるデータは最大でも 1 秒です
RDB 原則
フォークとカウ、フォークとはredis への子プロセスの作成 RDB 操作の場合、cow はコピー オン ライトを指します。子プロセスが作成された後、親プロセスと子プロセスはデータ セグメントを共有します。親プロセスは引き続き読み取りおよび書き込みサービスを提供します。ダーティ ページ データが書き込まれます。子プロセスから徐々に分離していきます。
Pipeline の利点は何ですか?
を使用すると、複数の IO ラウンドトリップの時間を 1 回に短縮できるのはなぜですか? 前提条件は、因果関係がないことです。 redis-banchmark がストレス テストを実行すると、redis の QPS ピーク値に影響を与える重要な要素がパイプライン バッチ命令の数であることがわかります。
redis の詳細については、redis 入門チュートリアル 列に注目してください。
以上がRedisキャッシュミドルウェアの基礎知識の紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。