我们的应用程序在Weblogic 12 C中运行了2个集群。
每个群集4受管服务器。集群B通过外部JNDI向集群A进行EJB调用。在群集A中,EJB调用是否未在受管服务器上分发?这导致群集A中的一个服务器过载。我们在群集配置中使用循环负载平衡。
你能告诉我我们在Weblogic中可以做出的任何其他配置,以使ejb调用得到负载平衡吗?
此致 Sakumar
答案 0 :(得分:0)
您需要设置Foreign JNDI URL以指定群集中的所有主机。如果客户端持续调用同一主机,则集群是否负载均衡并不重要。
而不是这个,它会将所有流量引导到一个主机:
java.naming.provider.url = t3://server1:port1
尝试使用:
java.naming.provider.url = t3://server1:port1,server2:port2
修改
听起来好像weblogic算法没有做你想做的事,看看:https://docs.oracle.com/cd/E24329_01/web.1211/e24425/load_balancing.htm#CLUST180
具体来说 - the round-robin algorithm cycles through a list of WebLogic Server instances in order
。因此,它每次都会击中第一台服务器,因为这是您列表中的第一台服务器。我建议尝试其他算法或使用外部负载均衡器
答案 1 :(得分:-1)
这是weblogic中的错误,其中负载平衡算法因基于版本的应用程序耳朵部署而失败
此致 Sakumar