2.3. TCP 接続の設定

AMQ Broker は Netty を使用して基本的な、暗号化されていない TCP ベースの接続を提供します。この接続は、ブロッキング Java IO または新しい非ブロッキング Java NIO を使用するように設定できます。多くの同時接続でスケーラビリティーを向上させるために、Java NIO が推奨されます。ただし、古い IO を使用すると、何万もの同時接続のサポートを受けても NIO より優れたレイテンシーが発生することがあります。

信頼できないネットワーク全体で接続を実行している場合は、TCP ネットワーク接続が暗号化されないことを認識する必要があります。暗号化が優先される場合には、SSL または HTTPS 設定を使用して、この接続で送信されたメッセージを暗号化することを検討してください。参照する「接続のセキュリティー保護」詳細については。TCP 接続を使用すると、すべての接続がクライアント側から開始されます。つまり、サーバーはクライアントへの接続を開始しません。これは、ある方向から接続を強制するファイアウォールポリシーで適切に機能します。

TCP 接続では、コネクター URI のホストおよびポートは接続に使用されるアドレスを定義します。

手順

  1. BROKER_INSTANCE_DIR/etc/broker.xml 設定ファイルを開きます。
  2. 接続を追加または変更し、tcp をプロトコルとして使用する URI を追加します。IP またはホスト名、ポートの両方を含めるようにしてください。

以下の例では、acceptor は TCP 接続として設定されます。この acceptor で設定されたブローカーは、IP 10.10.10.1 およびポート 61617 への TCP 接続を行うクライアントを受け入れます。

<acceptors>
  <acceptor name="tcp-acceptor">tcp://10.10.10.1:61617</acceptor>
  ...
</acceptors>

同様の方法で TCP を使用するようにコネクターを設定します。

<connectors>
  <connector name="tcp-connector">tcp://10.10.10.2:61617</connector>
  ...
</connectors>

上記の connector は、指定された IP およびポート 10.10.10.2 :61617 に TCP 接続を確立する際に、クライアントまたはブローカー自体によって 参照されます。

TCP 接続で利用可能な設定パラメーターの詳細は、Acceptor and Connector Configuration Parameters を参照してください。ほとんどのパラメーターはアクセプターまたはコネクターで使用することができますが、アクセプターでのみ機能するものもあります。