この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。
建築家
建築家
リスト
放送
茶屋
インテリジェントAI会話
.NETキャリア&テクニカルカレッジ
ちっちゃいなクズブログ
この版
利用者
Architect_Programmer_Code農業ネットワーク
»
建築家
›
プログラミング
›
その他の番組編成
›
RabbitMQ BasicQos 消費者並列処理の制限
眺める:
23648
|
答える:
0
RabbitMQ BasicQos 消費者並列処理の制限
[リンクをコピー]
クズども
掲載地 2018/04/10 22:36:02
|
|
|
|
まず第一に、rabbitmqサーバーに未処理のメッセージが100件あります。ランダムにコンシューマークライアントを開くと、次のような状況が表示されます。
100件のデータが一瞬で転送されるのに、単一のクライアントで同時にこれほど多くのデータを処理できないのに、どうすればいいのでしょうか?
上の画像に示されている通り、メッセージの受信確認はしていません! 生産者が送り続ければ、私たち消費者もこれからも届き続けるでしょう!
例えば、1人の消費者が1分間に最大60件のメッセージを処理できるとしますが、生産者は1分間に300件のメッセージを送る場合、
私たちのコンシューマークライアントは、1分間に同時に300件のメッセージを受け取る必要があり、最大負荷を超えているため、サーバーリソースが使い果たされてコンシューマクライアントが止まる可能性があります
。
RabbitMQはQoS(サービス品質)機能を提供します
すなわち、メッセージの非自動確認の前提のもと、一定数のメッセージ(消費またはチャネルに基づいてQosの値を設定して)が確認されなければ、新しいメッセージは消費されません。
ログインが見えます。
prefetchSize:0
prefetchCount:RabbitMQに対して、同時にN個以上のメッセージを消費者にプッシュしないよう指示します。つまり、まだAckされていないN個のメッセージがあると、Ackが出るまで消費者はブロックします
global:true/false 上記の設定がチャネルに適用されるか、簡単に言えば、上記の制限がチャネルレベルか消費者レベルか
注:prefetchSizeとglobalはrabbitmqによって実装されていないと言われているので、当面は勉強しません
prefetch_count no_ask=偽の場合に効果が現れます
,
つまり、自動回答の場合、これら2つの値は次のようになります
効力がない
の
BasicQosメソッドでprefetchCount = 3を設定します。 これにより、RabbitMQは1つのコンシューマーにつき最大3つのメッセージを同時に処理できます。 言い換えれば、ACKを受け取るまでは消費者に新しいメッセージを配布しません。 設定方法は以下の通りです:
ログインが見えます。
図に示すように、同時に2人の消費者がQueueを聴いていますが、ここでのメッセージは1人の消費者が消費した場合のみ自動的に登録され、もう一方の消費者はこのメッセージを受け取ることはありません。
公式ウェブサイト紹介:http://www.rabbitmq.com/consumer-prefetch.html
この方法ではキューが満杯になることがあります。 もちろん、設計を洗練させるために、より多くのコンシューマーを追加したり、仮想ホストを作成する必要があるかもしれません。
先の:
EFは一括データベースの挿入、更新、削除を実装しています
次に:
IIS Expressのウェブサーバーは起動できませんでした
関連記事
•
まとめ:RabbitMQはカスタムスイッチとキューを作成します
•
RabbitMQ:誰がキューと交換を作るのか
•
RabbitMQ AMQPメッセージアーキテクチャの詳細な説明
•
java操作rabbitmqについて教えてください。basicQos()は無効です
•
Mqttのサービス品質レベルQos(Qos)
•
ActiveMQおよびRabbitMQに関する情報概要
•
RabbitMQメッセージ応答のメカニズムの詳細な分析
•
.net/c# RabbitMQ接続切断 - 切断と再接続
•
RabbitMQの3つの交換モード(ファンアウト、ダイレクト、トピック)の紹介
•
【実戦】エラー:ノード『ウサギ』に操作ができません。 お願い...
閲覧したセクション
.Net/C#
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。
Mail To:help@itsvse.com