我们有一个基于Web的应用程序在WildFly 11上运行(最近从WildFly 9迁移),并且在启动集群中的所有节点时都面临着这个奇怪的问题。
这是设计我们的应用程序以登录并显示主页的方式:
这就是问题所在-
对于第一个尝试登录该应用程序的用户(即步骤
上面的1-3)重定向到登录页面,即使
用户输入了有效的凭据。
在后端-我们的主页servlet找不到会话 在登录过程中创建,因此用户被重定向回 登录页面。
此后任何登录尝试都可以正常进行。
我们通过VPN(这是一个较慢的网络)尝试了相同的步骤(即上述步骤1-3),但并未发现此问题的发生,并且我们还进行了其他一些测试,得出结论:给它更多的时间在第一次登录的重定向过程中工作正常。因此我们得出结论,这可能是JGroups初始化问题,因为仅在首次登录尝试时才会发生这种情况。
<channels default="ee">
<channel name="ee" stack="tcp" cluster="repl"/>
</channels>
。
<stack name="tcp">
<transport type="TCP" socket-binding="jgroups-tcp"/>
<protocol type="TCPPING">
<property name="initial_hosts">
10.0.99.11[7600],10.0.99.12[7600]
</property>
<property name="num_initial_members">
2
</property>
</protocol>
<protocol type="MERGE3"/>
<protocol type="FD_SOCK"/>
<protocol type="FD_ALL"/>
<protocol type="VERIFY_SUSPECT"/>
<protocol type="pbcast.NAKACK2"/>
<protocol type="UNICAST3"/>
<protocol type="pbcast.STABLE"/>
<protocol type="pbcast.GMS"/>
<protocol type="MFC"/>
<protocol type="FRAG2"/>
</stack>
。
<interfaces>
<interface name="management">
<inet-address value="${jboss.bind.address.management:127.0.0.1}"/>
</interface>
<interface name="public">
<inet-address value="10.0.99.12"/>
</interface>
<interface name="private">
<inet-address value="${jboss.bind.address.private:127.0.0.1}"/>
</interface>
</interfaces>
<socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}">
<socket-binding name="management-http" interface="management" port="${jboss.management.http.port:9990}"/>
<socket-binding name="management-https" interface="management" port="${jboss.management.https.port:9993}"/>
<socket-binding name="ajp" port="${jboss.ajp.port:8009}"/>
<socket-binding name="http" port="${jboss.http.port:8080}"/>
<socket-binding name="https" port="${jboss.https.port:8443}"/>
<socket-binding name="jgroups-mping" interface="public" port="0" multicast-address="${jboss.default.multicast.address:230.0.0.4}" multicast-port="45700"/>
<socket-binding name="jgroups-tcp" interface="public" port="7600"/>
<socket-binding name="jgroups-udp" interface="public" port="55200" multicast-address="${jboss.default.multicast.address:230.0.0.4}" multicast-port="45688"/>
<socket-binding name="modcluster" port="0" multicast-address="${jboss.modcluster.multicast.address:224.0.1.105}" multicast-port="23364"/>
<socket-binding name="txn-recovery-environment" port="4712"/>
<socket-binding name="txn-status-manager" port="4713"/>
<outbound-socket-binding name="mail-smtp">
<remote-destination host="localhost" port="25"/>
</outbound-socket-binding>
<outbound-socket-binding name="10_0_99_11">
<remote-destination host="10.0.99.11" port="6666"/>
</outbound-socket-binding>
<outbound-socket-binding name="10_0_99_12">
<remote-destination host="10.0.99.12" port="6666"/>
</outbound-socket-binding>
</socket-binding-group>
请向我建议如何解决这个问题,或者如果我在这里做错了事,请给我启发。