RabbitMQ インストール (Windows) サンプル チュートリアル
管理バックエンド
rabbitmqには独自の管理バックエンドが付属しており、インストール後に設定して有効にする必要があります
rabbitmqインストールディレクトリのsbinディレクトリに移動して実行します
rabbitmq-pluginsでrabbitmq_managementを有効にします
rabbitmqサービスを再起動して有効にします
http://localhost:15672/ を開き、管理の背景を参照します
ユーザー名とパスワードはすべてゲストです
設定手順
コマンドラインを使用してキューリストを表示します
sbin>rabbitmqctl list_queues sbin>rabbitmqctl list_queues name messages_ready messages_unacknowledged
コマンドラインを使用して交換リスト
sbin>rabbitmqctl list_exchanges
キューを定義します
RabbitMQ では異なるパラメータを使用できません 既存のキューを再定義します。
RabbitMQ では、異なるパラメータを使用して既存のキューを再定義することはできず、再定義しようとするプログラムにはエラーが返されます
信頼性
メッセージが失われないようにするには、メッセージの永続性を設定する必要がありますキューも耐久性がなければなりません。
ただし、これはまだ 100% 信頼できるわけではありません。メッセージを受信した後、永続化が完了する前に RabbitMQ がクラッシュした場合、メッセージは失われるからです。
繰り返し処理
次のシナリオを考えてみましょう (前提: キューとメッセージは永続的です):
ACKACK 確認は、コンシューマがメッセージの処理を完了したことを RabbitMQ に伝えるだけであり、論理的な処理が成功したことを通知するものではありません。ビジネス処理が失敗した場合でも、ACK 確認は必要です。一般に、ビジネス上の理由で障害が発生した場合、再試行しても問題は解決しないからです。ネットワークの中断、マシンの停電などによる障害のみ、再試行が必要です。 ビジネス負荷が特定のコンシューマに集中するのを防ぎます
コンシューマーはメッセージ msgA を受信しましたが、これは処理途中で完了しておらず、ACK 確認も開始されていませんでした。
この時点で、RabbitMQ はクラッシュしました。- コンシューマはメッセージ msgA の処理を完了しました。
- RabbitMQ が再起動されたときに、msgA が処理されていないことが判明したため、msgA が再度コンシューマに送信されました。
- このシナリオでは、メッセージ msgA が 2 回処理されるため、コンシューマ側には繰り返し処理を防ぐメカニズムが必要です。
channel.basicQos(prefetchCount);
prefetchCount=1
を設定し、最後のメッセージがそのコンシューマに割り当てられるまで、一度に 1 つのコンシューマに 1 つのメッセージのみを割り当てるように RabbitMQ に指示しますメッセージは確認されて処理されます。このようにして、実際の処理条件に基づいて、アイドル状態のコンシューマにメッセージが毎回割り当てられます。
デフォルトの Exchange についてprefetchCount=1
,告诉RabbitMQ 每次只给一个消费者分配一个消息,直到上一个分配给该消费者的消息被确认处理完成。这样一来,消息就会根据实际处理情况,每次都分配给空闲的消费者。
关于默认Exchange
默认Exchange隐式地绑定到每一个队列,路由key为队列名。不能对其进行显式绑定或解绑。并且它是不可删除的。
The default exchange is implicitly bound to every queue, with a routing key equal to the queue name. It is not possible to explicitly bind to, or unbind from the default exchange. It also cannot be deleted.
消息传递的基本过程
发布者发布一个消息
-->exchange接收消息(如果发布者没有指定特定的Exchange则使用默认Exchange),并根据exchange的类型,按照一定的路由规则,把消息路由给每一个符合路由规则的队列(如果没有匹配的队列,则消息被丢弃)
-->队列将消息发送给订阅该队列的某一个消费者(如果没有消费者则消息保留在队列中,知道有消费者消费该消息)
Topic Exchange的通配符
星号匹配一个单词(注意,不是一个字母)
デフォルトの交換は、キュー名と同じルーティングキーを使用して、すべてのキューに暗黙的にバインドされます。また、デフォルトの交換に明示的にバインドしたり、デフォルトの交換からバインドを解除したりすることはできません。また、メッセージを渡すこともできません。基本プロセス発行者がメッセージを発行デフォルトの Exchange は暗黙的に各キューにバインドされており、ルーティング キーはキュー名です。明示的にバインドまたはアンバインドすることはできません。そしてそれは削除できません。
*
(star) can substitute for exactly one word.
井号匹配任意个单词#
--> Exchange がメッセージを受信 (発行者が特定の Exchange を指定しない場合は、デフォルトの Exchange が使用されます)、交換の種類と特定のルーティング ルールに従って、メッセージは、ルーティング ルールに準拠する各 A キューにルーティングされます (一致するキューがない場合、メッセージは破棄されます)
---> キューは、キューに登録されているコンシューマにメッセージを送信します (コンシューマが存在しない場合、メッセージは、コンシューマーがメッセージを消費するまでキューに残ります) トピック交換ワイルドカード スターは単語と一致します (文字ではなく注意してください) 🎜*
(スター) は正確に置き換えることができます1 つの単語。🎜ポンド記号 任意の数の単語に一致します🎜#
(ハッシュ) は、0 個以上の単語の代わりに使用できます。🎜🎜🎜AMQP プロトコルの必須フラグと即時フラグの役割🎜🎜必須フラグと即時フラグは、 AMQP プロトコルの Basic.pulish メソッド内 2 つのフラグ ビットには、メッセージ配信中に宛先に到達できない場合にメッセージをプロデューサーに返す機能があります。具体的な違いは次のとおりです: 🎜🎜1. 必須フラグ 🎜🎜必須フラグが true に設定されている場合、交換が独自のタイプとメッセージのルートキーに基づいて適格なキューを見つけられない場合、basic.return メソッドが呼び出されて、または、必須が false に設定されている場合、ブローカーは上記の状況でメッセージを直接破棄します。 🎜🎜2. 即時フラグ ビット 🎜🎜 即時フラグ ビットが true に設定されている場合、Exchange がメッセージをキューにルーティングするときに、対応するキューにコンシューマーが存在しないことが検出された場合、メッセージはキューに置かれません。列。メッセージrouteKeyに関連付けられたすべてのキュー(1つ以上)にコンシューマがない場合、メッセージはbasic.returnメソッドを通じてプロデューサに返されます。 🎜以上がRabbitMQ インストール (Windows) サンプル チュートリアルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











小紅書メモを削除するにはどうすればよいですか? メモは小紅書アプリで編集できます。ほとんどのユーザーは小紅書メモの削除方法を知りません。次に、エディターがユーザーに小紅書メモの削除方法に関する写真とテキストを提供します。チュートリアル、興味のあるユーザーが来て、それを受講してください見てください!小紅書使い方チュートリアル 小紅書メモの削除方法 1. まず小紅書アプリを開いてメインページに入り、右下隅の[自分]を選択して特別エリアに入ります; 2. 次に、マイエリアで、表示されているメモページをクリックします下の図で、削除したいメモを選択します; 3. メモページに入り、右上隅の [3 つの点] をクリックします; 4. 最後に、下部に機能バーが展開され、[削除] をクリックして完了します。

もうpipは必要ありませんか? pip を効果的にアンインストールする方法を学びましょう!はじめに: pip は Python のパッケージ管理ツールの 1 つで、Python パッケージを簡単にインストール、アップグレード、アンインストールできます。ただし、別のパッケージ管理ツールを使用したい場合や、Python 環境を完全にクリアする必要がある場合など、pip をアンインストールする必要がある場合があります。この記事では、pip を効率的にアンインストールする方法を説明し、具体的なコード例を示します。 1. pip をアンインストールする方法 以下では、pip をアンインストールする 2 つの一般的な方法を紹介します。

小紅書のユーザーとして、私たちは皆、公開されたノートが突然消えてしまう状況に遭遇したことがありますが、間違いなく混乱し、心配しています。この場合、どうすればよいでしょうか?この記事では、「小紅書が公開したメモが見つからない場合の対処方法」というテーマに焦点を当て、詳細な回答を提供します。 1. 小紅書が発行したメモが紛失した場合はどうすればよいですか?まず、パニックにならないでください。メモがなくなっていることに気づいた場合は、パニックに陥らず、落ち着いて行動することが重要です。これは、プラットフォームのシステム障害または操作エラーが原因である可能性があります。リリース記録の確認も簡単です。小紅書アプリを開き、「自分」→「公開」→「すべての出版物」をクリックするだけで、自分の出版記録を表示できます。ここでは、以前に公開されたノートを簡単に見つけることができます。 3.再投稿。見つかったら

matplotlib カラー テーブルの詳細については、特定のコード サンプルが必要です 1. はじめに matplotlib は強力な Python 描画ライブラリであり、さまざまな種類のチャートの作成に使用できる豊富な描画関数とツールのセットを提供します。カラーマップ (カラーマップ) は matplotlib の重要な概念であり、チャートの配色を決定します。 matplotlib カラー テーブルを詳しく学ぶことは、matplotlib の描画機能をよりよく習得し、描画をより便利にするのに役立ちます。

小紅書でメモに商品リンクを追加するにはどうすればよいですか?小紅書アプリでは、ユーザーはさまざまなコンテンツを閲覧できるだけでなく、ショッピングもできるため、このアプリにはショッピングのおすすめや良い商品の共有に関するコンテンツがたくさんあります。このアプリでは、ショッピング体験を共有したり、協力してくれる販売者を見つけたり、メモにリンクを追加したりすることもできます。便利なだけでなく、専門家がいくつかの機能を備えているため、多くの人がこのアプリをショッピングに使用したいと考えています。興味深いコンテンツを閲覧して、自分に合った衣料品があるかどうかを確認できます。ノートに商品リンクを追加する方法を見てみましょう! 小紅書ノートに商品リンクを追加する方法 携帯電話のデスクトップでアプリを開きます。アプリのホームページをクリックします

Pygame をゼロから学ぶ: 完全なインストールと構成チュートリアル、特定のコード例が必要 はじめに: Pygame は、Python プログラミング言語を使用して開発されたオープン ソースのゲーム開発ライブラリであり、豊富な機能とツールを提供し、開発者はさまざまなタイプのゲームを簡単に作成できますゲームの。この記事は、Pygame をゼロから学習するのに役立ち、完全なインストールと構成のチュートリアルと、すぐに始めるための具体的なコード例を提供します。パート1:最初にPythonとPygameをインストールして、確認してください

C言語学習の魅力:プログラマーの可能性を引き出す テクノロジーの発展に伴い、コンピュータプログラミングは大きな注目を集めている分野です。数あるプログラミング言語の中でもC言語は常にプログラマーに愛されています。そのシンプルさ、効率性、幅広い用途により、C 言語の学習は、多くの人にとってプログラミングの分野に入る最初のステップとなっています。この記事では、C言語を学ぶ魅力と、C言語を学ぶことでプログラマーの可能性を引き出す方法について解説します。 C言語学習の魅力は、まずその簡単さにあります。他のプログラミング言語と比較すると、C言語は

Word でテキスト コンテンツを編集するときに、数式記号の入力が必要になる場合があります。 Word でルート番号を入力する方法を知らない人もいるので、Xiaomian は私に、Word でルート番号を入力する方法のチュートリアルを友達と共有するように頼みました。それが私の友達に役立つことを願っています。まず、コンピュータで Word ソフトウェアを開き、編集するファイルを開き、ルート記号を挿入する必要がある場所にカーソルを移動します。下の図の例を参照してください。 2. [挿入]を選択し、記号内の[数式]を選択します。下の図の赤丸で示すように: 3. 次に、下の[新しい数式を挿入]を選択します。以下の図の赤丸で示すように: 4. [根号式]を選択し、適切な根号を選択します。下の図の赤丸で示したように、
