AMQP/ZeroMQ/RabbitMQを使用する理由
疑問点
は、自分でライブラリを書くのとは対照的です。
1 つのセクションが重くなりすぎた場合、管理者はそれを分割し、別のマシン上に別のプロセスとして配置します。また、接続されているすべてのクライアントに、新しいサーバーに接続するよう警告します。
私は、サーバー間およびプロセス間通信に ZeroMQ を使用することに興味があります。私のパートナーは、自分自身でロール オーバーすることを望んでいます。私は、この質問に答えるために、コミュニティに期待しています。
私自身はかなり初心者のプログラマーで、メッセージング キューについて学んだばかりです。ググって読んでみると、誰もがあらゆる種類のことにメッセージング キューを使用しているようですが、なぜでしょうか?自分でライブラリを書くよりも優れているのはなぜでしょうか?なぜそんなに一般的で、なぜそんなにたくさんあるのでしょうか?
どのように解決するのでしょうか?
<ブロッククオート自分でライブラリを作成するよりも優れている点は何ですか?
あなたのアプリの最初のバージョンをロールアウトするとき、おそらく何もありません:あなたのニーズはよく定義されており、あなたはあなたのニーズに合うメッセージングシステムを開発します:小さな機能リスト、小さなソースコードなど。
それらのツールは 非常に 便利です 後 の後、実際にアプリケーションを拡張し、より多くの機能を追加しなければならないときです。 いくつかの使用例を挙げてみましょう。
- あなたのアプリケーションは、リトル エンディアン マシン (x86、intel/amd) からビッグ エンディアン マシン (sparc/powerpc) に話しかけなければならないでしょう。メッセージング システムにエンディアンの順序付けの前提がある場合、それを修正する必要があります。
- バイナリ プロトコル/メッセージング システムではないようにアプリを設計し、解析にほとんどの時間を費やしたために非常に遅くなった (メッセージの数が増加し、解析がボトルネックになった): バイナリ/固定エンコードを伝送できるように適合させます。
-
クライアント/上司/小悪魔のような上司が現れ、自分が管理していない WAN にアプリをインストールするように言われ、接続の失敗や遅延などが発生し始めました。
-
送信されたメッセージには返信が必要ですが、そのすべてではありません。いくつかのパラメータを送信し、送信と承認だけでなく、結果としてスプレッドシートを期待します。
- いくつかのメッセージは重要であり、その受信/送信は適切なバックアップ/永続化/を必要とします。なぜ聞くのですか? 監査のためです。
その他多くのユースケースを忘れてしまいましたが...
自分で実装することもできますが、そのために多くの時間を費やさないでください。
関連
-
[解決済み] RabbitMQ / AMQP:単一のキューで、同じメッセージに対して複数のコンシューマー?
-
[解決済み] RabbitMQ set_permissions シンタックス noob
-
[解決済み】RabbitMQとチャネルとコネクションの関係
-
[解決済み] RabbitMQ:rabbitmqのバージョンを確認する
-
[解決済み] RabbitMQはどのようなポートを使用するのですか?
-
[解決済み] JMSとAMQP - RabbitMQ
-
[解決済み] メッセージ、キュー、エクスチェンジの限界とは?
-
[解決済み] rabbitmq管理画面のユーザーをリセットする方法
-
[解決済み] コマンドラインからキューとバインディングを作成するRabbitMQ
-
NServiceBusとRabbit MQまたはKafkaの組み合わせ
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] RabbitMQ」メッセージの種類「Ready」「Unacked」とは何ですか?
-
[解決済み] RabbitMQからすべてのキューを削除しますか?
-
[解決済み] RabbitMQのコンシューマテストを自動化する
-
[解決済み] RabbitMQ set_permissions シンタックス noob
-
[解決済み] RabbitMQ:rabbitmqのバージョンを確認する
-
[解決済み] RabbitMQはどのようなポートを使用するのですか?
-
[解決済み] メッセージ、キュー、エクスチェンジの限界とは?
-
[解決済み] rabbitmq管理画面のユーザーをリセットする方法
-
[解決済み] コマンドラインからキューとバインディングを作成するRabbitMQ
-
NServiceBusとRabbit MQまたはKafkaの組み合わせ