WildFly 11-JGroups初始化延迟

时间:2018-07-26 07:34:19

标签: wildfly infinispan jgroups wildfly-11 wildfly-cluster

我们有一个基于Web的应用程序在WildFly 11上运行(最近从WildFly 9迁移),并且在启动集群中的所有节点时都面临着这个奇怪的问题。

这是设计我们的应用程序以登录并显示主页的方式:

  1. 输入应用程序的URL将为我们带来登录页面。
  2. 提供有效的凭据,然后单击登录。
  3. 后端servlet验证这些信誉,并在成功登录后, 浏览器发送带有首页URL的重定向请求(HTTP302)。

这就是问题所在-

  • 对于第一个尝试登录该应用程序的用户(即步骤 上面的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>

请向我建议如何解决这个问题,或者如果我在这里做错了事,请给我启发。

0 个答案:

没有答案