JBoss EAP 8.0 アプリケーションのデプロイメントにおける HTTP セッションの RHDG への外部化に関する問題
Issue
- このKCS記事は、Red Hat JBoss Enterprise Application Platform (EAP) とRed Hat Data Grid (RHDG) を使用してHTTPセッションを外部化する際に発生するデプロイメントの問題に対処することを目的としています。RHDGクラスタが部分的に停止している状況でのアプリケーションデプロイメントの課題に焦点を当てています。
- RHDGクラスタが部分的に停止している(例:複数台のうち1台のみが稼働している)場合、HotRodストアを使用していると、デプロイメントがロールバックされることがあります。
remote-cluster
のsocket-bindings
属性に複数の接続先が設定されていても、接続失敗時に次のサーバーへの接続を試みずにエラーが発生します。
Environment
- Red Hat JBoss Enterprise Application Platform (JBoss EAP) 8.0, 8.1
- Red Hat Data Grid (RHDG) 8.x
- Configuration: HTTP Session externalization to RHDG
Example Configuration:
standalone-ha.xml
<cache-container name="web" default-cache="rhdg" marshaller="PROTOSTREAM" modules="org.wildfly.clustering.web.infinispan">
<invalidation-cache name="rhdg">
<locking isolation="REPEATABLE_READ"/>
<transaction mode="BATCH"/>
<hotrod-store remote-cache-container="web-sessions" passivation="false" purge="false" shared="true" fetch-state="false"/>
</invalidation-cache>
</cache-container>
<remote-cache-container name="web-sessions" default-remote-cluster="data-grid-cluster" marshaller="PROTOSTREAM" statistics-enabled="true">
<remote-clusters>
<remote-cluster name="data-grid-cluster" socket-bindings="remote-rhdg1 remote-rhdg2"/>
</remote-clusters>
</remote-cache-container>
<socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}">
<outbound-socket-binding name="remote-rhdg1">
<remote-destination host="localhost" port="11222"/>
</outbound-socket-binding>
<outbound-socket-binding name="remote-rhdg2">
<remote-destination host="localhost" port="11322"/>
</outbound-socket-binding>
</socket-binding-group>
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.