【发布时间】:2012-01-10 09:11:08
【问题描述】:
我在 weblogic 10.3.3 中部署了一个 web 应用程序作为 war 文件。现在我想让这个应用程序可集群。为此,我使用来自 Weblogic 的HttpClusterServlet 作为负载平衡器。根据documentation我可以把这个servlet配置放到web.xml中
<servlet>
<servlet-name>HttpClusterServlet</servlet-name>
<servlet-class>weblogic.servlet.proxy.HttpClusterServlet</servlet-class>
<init-param>
<param-name>WebLogicCluster</param-name>
<param-value>server-1:7122|server-1:7123</param-value>
</init-param>
</servlet>
问题是这个配置在构建时是硬连接的,不能在运行时重新配置。例如,我希望能够动态添加 5 个服务器。我有几个想法来解决这个问题:
- 使用自己的 servlet 实现扩展
weblogic.servlet.proxy.HttpClusterServlet。这是不可能的,课程是最终的。 - 使用 servlet 过滤器重新配置 servlet。自 Java Servlet API 2.1 起,该 servlet 不再可通过 ServletContext().getServlet(String) 访问,无法直接替换。
- 反射可能是一种选择,但我找不到访问配置的可靠方法
到目前为止,我在外部重新配置此 init-param 的所有尝试都失败了。我愿意接受任何解决方案。
【问题讨论】:
标签: java servlets weblogic web.xml cluster-computing