redis パブリッシュおよびサブスクライブ モードをメッセージ キューとして使用する場合と、rabbitmq を使用する場合の違い:
##信頼性
redis: 応答なしパブリッシャがメッセージをパブリッシュし、対応するサブスクライバが存在しない場合、メッセージは失われ、メモリに保存されません。rabbitmq: には、メッセージ消費確認メカニズムがあります。メッセージがパブリッシュされ、コンシューマがキューを消費していない場合、メッセージはコンシューマがメッセージを消費するまでキュー内に残ります。これにより、メッセージの信頼性の高い消費が保証されます。 (推奨される学習:Redis ビデオ チュートリアル )
リアルタイム パフォーマンス
redis: 高いリアルタイム パフォーマンス、Redis は効率的なキャッシュとして機能します。すべてのデータはメモリ内に存在するため、リアルタイム パフォーマンスが向上します。コンシューマ負荷分散:
rabbitmq キューは複数のコンシューマによって監視および使用できます。 Rabbitmq の消費確認メカニズムにより、消費者の消費能力に応じて負荷を調整できます; redis パブリッシュ/サブスクライブ モードでは、キューをサブスクライブできます複数のコンシューマーによって同時に , メッセージが到着すると、メッセージは各サブスクライバーに順番に送信されます. これはメッセージ ブロードキャストの形式です. Redis 自体はコンシューマーの負荷分散を行わないため、消費効率にボトルネックがあります;Persistence
redis: Redis の永続化は、Redis キャッシュ コンテンツ全体に対するもので、RDB と AOF (Redis 永続化メソッド、後続の更新) の 2 つの永続化メソッドがあります。これにより、異常な状況でのデータ損失を防ぐために、データ バックアップのために Redis インスタンス全体をディスクに保存できます。 rabbitmq: キュー、各メッセージを選択的に永続化でき、永続化の粒度はより小さく、より柔軟です;キュー監視
rabbitmq バックグラウンド監視プラットフォームが実装されており、作成されたすべてのキューの詳細を確認できます。優れたバックグラウンド管理プラットフォームをより適切に使用できます。redis には、いわゆる監視プラットフォームがありません。概要
redis: 軽量、低遅延、高同時実行性、低信頼性; rabbitmq: 軽量、高信頼性、非同期、保証はありませんリアルタイム; rabbitmq は特殊な AMQP プロトコル キューです。その利点は、信頼性の高いキュー サービスを提供し、非同期であることにありますが、redis は主にキャッシュと Redis のパブリッシュとサブスクライブに使用されます。モジュールを使用してタイムリーに実装できます信頼性の低い機能。 Redis 関連の技術記事の詳細については、「Redis データベース チュートリアルの使用方法の概要」 列にアクセスして学習してください。
以上がmqとredisの違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。