【问题标题】:Weblogic clustered JMS and Apache proxyWeblogic 集群 JMS 和 Apache 代理
【发布时间】:2011-08-23 12:02:28
【问题描述】:

我有一个带有 2 个托管服务器的 Weblogic 10.3.4 集群 JMS 设置。现在,每个托管服务器都有自己的 IP 地址。我已经安装了 Apache 和 Weblogic 插件,如下所述:http://download.oracle.com/docs/cd/E12840_01/wls/docs103/plugins/apache.html

我的整个 Weblogic 集群是 4 台托管服务器,但我只希望 JMS 在其中 2 台上。我在 httpd.conf 文件中的以下部分启动并运行了我的 Apache。

<IfModule mod_weblogic.c>
    WebLogicCluster ip1:7001,ip2:7001,ip3:7001,ip4:7001
    ErrorPage http://ip1:7070/error.html
    DynamicServerList ON
    IdemPotent OFF
</IfModule>
...
...
<Location /HTTPClnt>
  SetHandler weblogic-handler
  WebLogicCluster ip1:7001,ip2:7001
</Location>

但是,这不起作用。我有一个简单的 Java 类,可以从 JMS 队列中写入/读取,它在访问每个 JMS 服务器的 IP 地址时工作,但是当通过代理的 IP 时,我得到了这个。

Exception in thread "main" javax.naming.CommunicationException [Root exception is weblogic.socket.UnrecoverableConnectException: [Login failed for an unknown reason: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">]]
        at weblogic.jndi.internal.ExceptionTranslator.toNamingException(ExceptionTranslator.java:40)
        at weblogic.jndi.WLInitialContextFactoryDelegate.toNamingException(WLInitialContextFactoryDelegate.java:788)
        at weblogic.jndi.WLInitialContextFactoryDelegate.getInitialContext(WLInitialContextFactoryDelegate.java:366)
        at weblogic.jndi.Environment.getContext(Environment.java:315)
        at weblogic.jndi.Environment.getContext(Environment.java:285)
        at weblogic.jndi.WLInitialContextFactory.getInitialContext(WLInitialContextFactory.java:117)
        at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
        at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
        at javax.naming.InitialContext.init(InitialContext.java:223)
        at javax.naming.InitialContext.<init>(InitialContext.java:197)
        at jms.jmsinit(jms.java:112)
        at jms.putMessageInQueue(jms.java:77)
        at jms.main(jms.java:52)

有谁知道我必须做什么才能让 t3(以及有一天 t3s)在这种情况下工作?

【问题讨论】:

    标签: oracle apache jms weblogic cluster-computing


    【解决方案1】:

    您不能在 JMS 前面放置负载平衡器。您需要使用这样的集群 T3 地址:

    t3://10.0.0.1:7001,10.0.0.2:7001,10.0.0.3:7001
    

    【讨论】:

    • 谢谢,将它设置为我的 JMS URL 就可以了。我不认为这很容易。 :)
    猜你喜欢
    • 2023-03-10
    • 2011-08-03
    • 2011-08-22
    • 2010-12-11
    • 1970-01-01
    • 1970-01-01
    • 2012-08-14
    • 1970-01-01
    • 2017-01-16
    相关资源
    最近更新 更多