redis はどこで使用されますか?
#redis アプリケーション シナリオ#● トークン生成
#● SMS 確認コード
#● ランキング リスト
● メッセージ キュー
Redis の list のデータ構造実装は二重リンク リストであるため、メッセージ キュー (プロデューサー/コンシューマー モデル) に非常に便利に適用できます。メッセージのプロデューサーは lpush を通じてメッセージをリストに追加するだけでよく、コンシューマーは rpop を通じてメッセージを取り出すことができ、メッセージの順序が保証されます。メッセージキューを優先して実装する必要がある場合は、ソートセットを選択することもできます。パブリッシュ/サブスクライブ機能は、メッセージのパブリッシャー/サブスクライバー モデルとしても使用できます。いずれの方法を使用しても、Redis には永続化機能があるため、サーバー障害によるメッセージの損失を心配する必要はありません。 (推奨: 「
Redis ビデオ チュートリアル」) データの一貫性に対する高度な要件がある場合は、RocketMQ などのプロフェッショナル システムを使用する必要があります。
redis はキューに追加された要素の数を返すことによってキューにデータを追加するため、このビジネスにアクセスしているユーザーの数を判断するために使用できます。同時リクエストをシリアルに変更し、キューやスタックでも使用できます
分散ロックフロントエンドからの繰り返しリクエストを確認します。これは Redis を通じてフィルタリングできます。 Redis のシングルスレッド機能に基づくフラッシュキルシステムは、データベースの「爆発」を防ぎます
「秒キル」と同様のグローバル増分 ID 生成
Counterクリック数のカウントなどのアプリケーション。シングルスレッドのため、同時実行の問題が回避され、エラーのないことが保証され、100% ミリ秒のパフォーマンスが保証されます。 カウント機能は、高頻度の読み取りと書き込みの特性により、インメモリ データベースとしての Redis の効率を最大限に活用できるため、Redis に最適な使用シナリオの 1 つとなります。 Redis データ構造では、文字列、ハッシュ、およびソート セットはすべて、アトミックなインクリメント操作の incr メソッドを提供します。
例:アプリケーションで登録ユーザーの数を毎日表示する必要がある場合は、カウンタとして文字列を使用し、REGISTERED_COUNT_TODAY という名前のキーを設定し、初期化 有効期限を午前 0 時に設定します。ユーザーが登録に成功するたびに、incr コマンドを使用してキーを 1 ずつ増やします。同時に、毎日午前 0 時になると、有効期限が切れたためカウンターがゼロにクリアされます。キー。 各 Weibo には「いいね数」「コメント数」「リツイート数」「閲覧数」の 4 つの属性があるため、この場合はハッシュを使用してカウントするのが良いでしょう。カウンターのキーを weibo に設定します。 :weibo_id, hash フィールドは like_number、comment_number、forward_number、view_number で、対応する操作の後、ハッシュ内のフィールドは hincrby を通じてインクリメントされます。
アプリケーションにポストランキング機能がある場合は、ソートセットを選択し、セットのキーを POST_RANK に設定します。ユーザーが投稿するとき、zincrby を使用してユーザー ID のスコアを 1 増やします。ソートされたセットは再ソートされ、ユーザーのランキング順位がリアルタイムに更新されます。
以上がRedis はどこで使用されますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。