使用WEBLOGIC7.0配置ProxyServer实例

类别:Java 点击:0 评论:0 推荐:

使用WEBLOGIC7.0配置ProxyServer

一、前言:最好先看完文章 http://www.csdn.net/Develop/read_article.asp?id=16715 对WLS配置Cluster有个了解。

二、适合读者对象:对于系统稳定性和效率高的WEBLOGIC项目实施者,对WEBLOGIC有兴趣的开发者。

三、介绍:前面文章遗留的问题是,从客户的角度来看,他可以通过两个URL来访问你发布在Cluster中的应用,NodeA上的 http://localhost:7024/browsecategories 或NodeB上的

http://localhost:7025/browsecategories ,并没有提供一致的访问URL,而同时对于Cluster中的两个Node也似乎并没有很好的提供负载均衡,接下来我们的任务就是做一个ProxyServer,让它来替我们完成剩下的任务。一个ProxyServer可以提供给客户一个一致的入口和很好的负载均衡机制。

四、例子: [实验时请注意输入的大小写要统一]

大致框架: 

 

 

 

1、现在假设前一篇文章的设置工作都已完成,接下来启动startWebLogic.cmd

2、用IE打开http://localhost:7001/console :mydomainàserversàConfigure a new Server:
        (a)Name:       ProxyServer

        (b) Listen Port:  7021

其它默认;

3、复制文件startManagedWebLogic.cmd(注意不是文件startWebLogic.cmd)成文件一startProxyServer.bat

修改文件startNodeA.bat中的两行

set SERVER_NAME=

set ADMIN_URL=

set SERVER_NAME=ProxyServer

set ADMIN_URL=http://honggb:7001

[注:上面的URL中为您的机器名称]

4、这一步要做一个简单的proxyApp.war文件

(a)web.xml文件内容为:(关键部分已用粗体显示)

<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>

  <servlet>

    <servlet-name>HttpClusterServlet</servlet-name>

    <servlet-class>weblogic.servlet.proxy.HttpClusterServlet</servlet-class>

    <init-param>

      <param-name>WebLogicCluster</param-name>

      <param-value>localhost:7024|localhost:7025</param-value>

    </init-param>

    <init-param>

      <param-name>DebugConfigInfo</param-name>

      <param-value>ON</param-value>

    </init-param>

  </servlet>

  <servlet-mapping>

    <servlet-name>HttpClusterServlet</servlet-name>

    <url-pattern>/</url-pattern>

  </servlet-mapping>

  <servlet-mapping>

    <servlet-name>HttpClusterServlet</servlet-name>

    <url-pattern>*.jsp</url-pattern>

  </servlet-mapping>

  <servlet-mapping>

    <servlet-name>HttpClusterServlet</servlet-name>

    <url-pattern>*.htm</url-pattern>

  </servlet-mapping>

  <servlet-mapping>

    <servlet-name>HttpClusterServlet</servlet-name>

    <url-pattern>*.html</url-pattern>

  </servlet-mapping>

  <login-config>

    <auth-method></auth-method>

  </login-config>

</web-app>

(b) weblogic.xml的内容为:

<!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application 7.0//EN" "http://www.bea.com/servers/wls700/dtd/weblogic700-web-jar.dtd">

<weblogic-web-app>

</weblogic-web-app>

(c)把以上两个文件放在WEB-INF目录,然后打包成proxyApp.war

 

5、发布和测试:

(a)     关闭startWebLogic.cmd启动的窗口

(b)    启动startWebLogic.cmd

   (c)启动startNodeA.bat

       (d) 启动startNodeB.bat

       (e)启动startProxyServer.bat

       (f) 用IE打开http://localhost:7001/console  将前面发布的browsestore.war文件undeploy然后在Targets里不选Clusters,选择Server里的ProxyServer,然后deploy。

      (g)测试:用IE打开 http://localhost:7001/console mydomainàServersà ProxyServeràconnectionsàHTTP

                            Default Web Application: 选择proxyApp

       (h)用IE打开http://localhost:7021/browsecategories 就可以看到你已经把应用发布到ProxyServer上了。

 

错误之处,还请指出。EMAIL:[email protected]

文章中的两个WAR文件:proxyApp.warbrowsestore.war不知道怎么上传。

本文地址:http://com.8s8s.com/it/it18024.htm