8.2. アクセプター
アクセプターは、JBoss EAP 統合メッセージングサーバーによって許可される接続のタイプを定義します。サーバーごとに任意の数のアクセプターを定義できます。以下の設定例はデフォルトの full-ha
設定プロファイルを修正したもので、各アクセプタータイプの例を示しています。
<subsystem xmlns="urn:jboss:domain:messaging-activemq:4.0"> <server name="default"> ... <http-acceptor name="http-acceptor" http-listener="default"/> <remote-acceptor name="legacy-messaging-acceptor" socket-binding="legacy-messaging"/> <in-vm-acceptor name="in-vm" server-id="0"/> ... </server> </subsystem>
上記の設定では、http-acceptor
は JBoss EAP のデフォルトの http ポート 8080 をリッスンする Undertow のデフォルト http-listener
を使用しています。http-listener
は undertow
サブシステムで定義されます。
<subsystem xmlns="urn:jboss:domain:undertow:10.0"> ... <server name="default-server"> <http-listener name="default" redirect-socket="https" socket-binding="http"/> ... </server> ... </subsystem>
また、上記の remote-acceptor
が legacy-messaging
という名前の socket-binding
を使用する仕組みに注意してください。これは、サーバーのデフォルトの socket-binding-group
の一部として、設定の後半で定義されています。
<server xmlns="urn:jboss:domain:8.0"> ... <socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}"> ... <socket-binding name="legacy-messaging" port="5445"/> ... </socket-binding-group> </server>
この例では、legacy-messaging
socket-binding
は JBoss EAP をポート 5445
にバインドしており、上記の remote-acceptor
がレガシークライアントで使用するために messaging-activemq
サブシステムの代わりにポートを要求しています。
最後に、in-vm-acceptor
は server-id
属性に一意の値を使用しており、このサーバーインスタンスを同じ JVM で実行されている他のサーバーと区別することができます。