WebLogic Cluster balancer始终路由到第二个节点

时间:2012-01-24 14:21:22

标签: weblogic cluster-computing soa

我已将Apache配置为对两个WebLogic节点进行负载均衡(使用mod_weblogic), 但是所有请求都被转发到第二个节点。

这里我添加到httpd.conf:

LoadModule weblogic_module modules/mod_wl_22.so
<IfModule mod_weblogic.c>
MatchExpression /soa-infra WebLogicCluster=node1.domain.com:8001,node2.domain.com:8001
</IfModule>
<Location /soa-infra>
SetHandler weblogic-handler
WebLogicCluster node1.domain.com:8001,node2.domain.com:8001
</Location>

我试过没有效果:

1) swap node1.domain.com and node2.domain.com
2) change balancing algorithm in WebLogic Administration Console

一些澄清:     1.客户端正在贴伏阿帕奇 - 我正在测试自己。     2.我看到apache仅在客户端/我的请求之后创建连接,并且它仅连接到第二个节点(正在执行它)。     3.是的,两个节点都在本地网络中并且可以访问。 我发现有趣的事情: 如果我从httpd.conf中删除所有的行除了用于加载mod_weblogic和重启apache的行,那么我无法通过load-balancer访问 - 所以balancer实际上是在使用我的配置行, 但如果我从列表中删除第二个节点,那么负载均衡器仍然会重定向第二个节点,而不是仅重定向一个列出的第一个节点。

看起来我发现了问题!

我在日志中看到几个请求后:

Wed Jan 25 19:56:49 2012 <480013275070093> Trying a pooled connection for '192.168.0.111/8001/8001'
Wed Jan 25 19:56:49 2012 <480013275070093> getPooledConn: No more connections in the pool for Host[192.168.0.111] Port[8001] SecurePort[8001]
Wed Jan 25 19:56:49 2012 <480013275070093> general list: trying connect to '192.168.0.111'/8001/8001 at line 2724 for '/soa-infra/services/partition/my_composite/my_composite_client_ep'

Wed Jan 25 19:57:05 2012 <480013275070256> Trying to locate Primary or Secondary using SrvrInfo with JVMID: -76285319
Wed Jan 25 19:57:05 2012 <480013275070256> getPreferredFromCookie: Found Primary 192.168.0.112:8001:0
Wed Jan 25 19:57:05 2012 <480013275070256> getPreferredFromCookie: Found 1 servers

192.168.0.111是第一个节点,192.168.0.112 - 秒。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

Hdrs from WLS:[X-WebLogic-Cluster-List]=[-76285319!node2.domain.com!8001!-1]

node2中的WebLogic服务器不知道群集的其余部分。请确保您的群集正常工作。

如果使用单播消息传递,则可以检查组是否已创建。

ServerGroup