ホームページ  >  記事  >  データベース  >  Redis はどこで使用されますか?

Redis はどこで使用されますか?

藏色散人
藏色散人オリジナル
2019-06-19 11:10:212472ブラウズ

Redis はどこで使用されますか?

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。