あなたの質問は少し厄介で、質問用紙の難しい質問に似ています:)(教師は常に単純な質問をして複雑にする:DIあなたが教師ではないことを願っています:))これらすべてを1つずつ見てみましょう。
あなたが知っているように:
Java Message Service (JMS)APIは、2つ以上のクライアント間でメッセージを送信するためのJava Message Oriented Middleware(MOM)APIです。JMSはJava Platform、Enterprise Editionの一部であり、Java Community Processの下でJSR 914として開発された仕様によって定義されています。これは、Java Enterprise Edition(Java EE)に基づくアプリケーションコンポーネントが作成できるようにするメッセージング標準です。メッセージの送信、受信、読み取り。分散アプリケーションのさまざまなコンポーネント間の通信を疎結合、信頼性、非同期にすることができます。
今(ウィキペディアから):
Advanced Message Queuing Protocol(AMQP)は、メッセージ指向ミドルウェア向けのオープンスタンダードのアプリケーション層プロトコルです。AMQPの特徴は、メッセージ指向、キューイング、ルーティング(ポイントツーポイントおよびパブリッシュアンドサブスクライブを含む)、信頼性およびセキュリティです。
そして、最も重要なこと(再びWikipediaから):
APIを定義するだけのJMSとは異なり、AMQPはワイヤーレベルのプロトコルです。ワイヤーレベルのプロトコルは、オクテットのストリームとしてネットワークを介して送信されるデータのフォーマットの説明です。その結果、このデータ形式に準拠するメッセージを作成および解釈できるツールは、実装言語に関係なく、他の準拠ツールと相互運用できます。
知っておくべき重要な点:
- AMQPはJMS APIを実装しないメッセージングテクノロジーであることを覚えておいてください。
- JMSはAPIであり、AMQPはプロトコルです。したがって、JMSのデフォルトプロトコルが何であると言っても意味がありません。もちろん、クライアントアプリケーションは、WebLogic Webサービスを呼び出すときに接続プロトコルとしてHTTP / Sを使用します。
- JMSは単なるAPI仕様です。プロトコルは使用していません。JMSプロバイダー(ActiveMQなど)は、基盤となるプロトコルを使用してJMS APIを実現できます。例:Apache ActiveMQは、AMQP、MQTT、OpenWire、REST(HTTP)、RSSおよびAtom、Stomp、WSIF、WS通知、XMPPのいずれかのプロトコルを使用できます。「JMSトランスポートを接続プロトコルとして使用する」を読むことをお勧めします。
幸運を :)