42

概要

クライアント (Android フォン) とサーバー (Windows サーバー) の間でメッセージを送受信しています。TCP を介した永続的な接続を使用します。どのプロトコルが最適なソリューションでしょうか。パフォーマンス、スケーラビリティ、メッセージのサイズ、およびバッテリー寿命を検討しています。メッセージは宛先に順番に到着する必要があり、重複することはできません。

MQTT

これはより良い解決策のように思えますが、多くのユーザーを対象とした大規模な実装の例はほとんどないようです。これをWindowsサーバーに統合できるかどうか、または別のアプリケーションまたはサーバーを実行する必要があるかどうかはわかりません。最後に、一般的にそれに関する情報が不足しているようです。

XMPP

これには多くの実装、例、さらには本があるようです:)。ただし、主な目的は、インスタント メッセージング クライアントや Google トークなどにあるようです。これは、サーバーとクライアント間のメッセージングに対する最適なソリューションでしょうか。現在、XMPP は主にクライアントからサーバー、クライアントへのアーキテクチャで使用されています。

間違っている場合は訂正してください。ご指導いただきありがとうございます。

4

3 に答える 3

67

何をしようとしているのか、実行しているハードウェアによって異なります。

MQTT のキープアライブ トラフィックは非常に少ないです。XMPP は IM プロトコルであり、すべてのクライアント間でプレゼンス メッセージを処理する際のオーバーヘッドが非常に大きくなります。

メモリ フットプリントの制約が小さい場合は、XML パーサーを処理する必要があるため、XMPP を使用できなくなる可能性があります。

MQTT は Message Queue Telemetry Transport の略であることに注意してください。つまり、これはトランスポート プロトコルであり、メッセージ形式をまったく定義していません。これを指定する必要があります。XMPP は、すべてのメッセージ形式を慎重に定義し、すべてのメッセージが XML であることを要求するインスタント メッセージング プロトコルです。

これらすべてに加えて、MQTT はパブリッシュ サブスクライブ プロトコルであり、XMPP はパブリッシュ サブスクライブをサポートするために (XEP-0060 を使用して) 拡張できるインスタント メッセージング プロトコルです。システムを設計するときは、これを考慮する必要があります。

私たちは、MQTT が静かな達成者であることを発見しています。マイレージは異なる場合があります。

それはすべて依存しています...

モバイル アプリでの MQTT の使用について議論している LinkedIn による最近の発表を追跡します。

乾杯マーク

(ところで、Andy は私たちへの言及で少しずれていました。私たちは、クイーンズランド大学、ブリスベン、オーストラリアの教育イノベーション & テクノロジー (CEIT) センターにいます)

于 2011-08-20T12:02:28.113 に答える
13

要するに、XMPP に対する MQTT の利点は次のとおりだと思います。

  • スループット容量: オーバーヘッドが少なく、軽量
  • バイナリとプレーンテキスト
  • QoS の導入 (Fire-and-forget、At-least-once、および Exactly-once)
  • Pub/Sub の配置 (XMPP には拡張機能 XEP-0060 が必要)
  • XMLパーサーは不要
于 2015-06-25T05:54:31.493 に答える
7

XMPP は主にチャット指向のプロトコルであるという点で、おそらく XMPP の評価を修正していると思います。また、非常に重量があり、XML を広範囲に使用して冗長にしています。ブリスベン大学の CEIT の関係者が、2 つのプロトコルの違いと最適な使用法を具体的に研究していることを私は知っています。MQTT は非常に軽量で低消費電力です。テレメトリーおよびセンサーのアプリケーションに 10 年以上使用されており、IBM およびパートナーによって非常に大規模に展開されています。モバイル開発には、このような単純なプロトコルが理想的であることがわかりました。

正確に何を達成しようとしていますか?mqtt.org サイトは、コンテンツへの適切なリンクを提供することを目的としています。それに関する IRC チャネルとメーリング リストもあります。どのように我々は助けることができます?

于 2011-08-20T11:15:43.577 に答える