4.3. 接続 URI
コネクションは接続 URI を使用して設定されます。接続 URI は、クエリーパラメーターとして設定されるリモートホスト、ポート、および設定オプションのセットを指定します。利用可能なオプションの詳細は、5章設定オプション を参照してください。
接続 URI 形式
<scheme>://<host>:<port>[?<option>=<value>[&<option>=<value>...]]
暗号化されていない接続のスキームは amqp
で、SSL/TLS 接続の場合は amqps
です。
たとえば、以下はポート 5672
でホスト example.net
に接続する接続 URI で、クライアント ID を backend
に設定します。
例: 接続 URI
amqp://example.net:5672?jms.clientID=backend
フェイルオーバー URI
フェイルオーバーが設定されると、現在のサーバーへの接続が失われた場合、クライアントは別のサーバーに自動的に再接続できます。フェイルオーバー URI にはプレフィックス failover:
があり、括弧内に接続 URI のコンマ区切りリストが含まれます。追加のオプションは最後に指定されます。
フェイルオーバー URI 形式
failover:(<connection-uri>[,<connection-uri>...])[?<option>=<value>[&<option>=<value>...]]
たとえば、以下は、host1
または host2
の 2 つのホストのいずれかに接続できるフェイルオーバー URI です。
例: フェイルオーバー URI
failover:(amqp://host1:5672,amqp://host2:5672)?jms.clientID=backend
接続 URI の例と同様に、クライアントはフェイルオーバー設定で URI を使用して多数の異なる設定で設定できます。これらの設定は、5章設定オプション で詳しく説明しています。「フェイルオーバーオプション」 セクションを使用してください。
SSL/TLS Server Name Indication
amqps
スキームを使用して SSL/TLS 接続を指定する場合、URI からのホストセグメントは JVM の TLS Server Name Indication (SNI) 拡張によって使用でき、TLS ハンドシェイク時に必要なサーバーのホスト名を通信できます。SNI 拡張は、完全修飾ドメイン名 (例: 「myhost.mydomain」) が指定されている場合に自動的に含まれますが、修飾されていない名前 (「myhost」など) やベア IP アドレスが使用される場合は定義されません。