有两种不同的情况。
场景 1:
假设 WebLogic 安装在 2 台不同的服务器上。服务器 IP:192.168.0.111 和 192.168.0.112。这些服务器不是集群服务器(即每台单机)。每台服务器上有 10 台托管服务器(分别位于 .111 和 .112 上)。
使用 Apache HTTP Server 版本 2.4.5*,是否可以对这两个不同的单节点(单机)WebLogic Server 进行负载平衡/重定向?
如果可能的话,我需要更改下面的小块吗?我还能使用“WebLogicCluster”选项吗?它是否必须看到一个真正的 WebLogic 集群,还是像我在场景中提到的那样在 2 个不同的单节点上工作?
<VirtualHost *:port>
SetHandler weblogic-handler
WebLogicCluster WLS_IP_1:WLS_PORT_1,WLS_IP_2:WLS_PORT_2
<Location /a_location>
SetHandler weblogic-handler
WebLogicCluster WLS_IP_1:WLS_PORT_1,WLS_IP_2:WLS_PORT_2
.....
.....
</Location>
RewriteEngine On
RewriteCond...
RewriteCond...
RewriteRule...
ErrorLog log_location
CustomLog log_location
.....
.....
</VirtualHost>
场景 2:
假设 WebLogic Server 安装在一台服务器上。服务器 IP:192.168.0.113。2 台托管服务器在单个实例(单台机器)上运行。在这种情况下,使用 Apache HTTP Server 版本 2.4.5*,是否可以为这 2 台不同的托管服务器进行负载平衡/重定向?
如果可能的话,这次我应该如何更改以下块?我可以通过在同一 IP 上显示 2 个不同的端口(2 个不同托管服务器的端口)来做到这一点吗?
<VirtualHost *:port>
SetHandler weblogic-handler
WebLogicCluster WLS_IP_1:WLS_PORT_1,WLS_IP_1:WLS_PORT_2
<Location /a_location>
SetHandler weblogic-handler
WebLogicCluster WLS_IP_1:WLS_PORT_1,WLS_IP_1:WLS_PORT_2
.....
.....
</Location>
RewriteEngine On
RewriteCond...
RewriteCond...
RewriteRule...
ErrorLog log_location
CustomLog log_location
.....
.....
</VirtualHost>
提前感谢并致以最诚挚的问候...
答案1
场景 1,您不能将 WeblogicCluster 与独立服务器一起使用,这是无稽之谈,不明智之举,默认情况下,当 weblogic 模块请求集群中的服务器列表并发现只有一台服务器时,它将删除其中一台服务器。如果您想在独立服务器之间进行负载平衡而不进行会话等,您可以改用 mod_proxy 和 mod_proxy_balancer。
场景 2,取决于这两台服务器或者同一台机器中的一百台服务器是否在 weblogic 集群中,如果答案是肯定的,那么就是肯定的,如果不是,则适用与场景 1 相同的响应。
您至少应该尝试阅读 weblogic 模块文档。