Websphere 上部署Web应用程序(单独war模块,flex(blazeds) + spring + hib + mysql,直接从tomcat迁过来的) 从单机到群集
服务器:WAND6.1, IBM HTTP SERVER, WAS的Web插件
WAR包的重构(从elipse等在tomcat下可以跑的):
先去掉现有的WEB-INF/*.xmi,websphere会自动生成
部署描述符WEB-INF/web.xml要注意改的地方:
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
... ...
<!-- 这里flex要用到的 -->
<resource-ref>
<description>Flex Messaging WorkManager</description>
<res-ref-name>wm/MessagingWorkManager</res-ref-name>
<res-type>com.ibm.websphere.asynchbeans.WorkManager</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Shareable</res-sharing-scope>
</resource-ref>
<!-- 这里指定jndi数据源资源 -->
<resource-ref>
<description>itracker Database for Portfolio Applications</description>
<res-ref-name>jdbc/itrackerdev</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
然后application-context.xml等的内容涉及到数据源的地方都改为正确的数据库服务器地址和端口
然后flex/service-config.xml里注意加这一句:
<login-command class="flex.messaging.security.WebSphereLoginCommand" server="WebSphere"/>
然后C:/windows/system32/drivers/hosts内容里加上群集服务器的地址和完整名称例如:
192.168.81.52 zhaozixuan.sberp.sbsoft.com
192.168.81.53 huangyg.sberp.sbsoft.com
192.168.81.82 chengwei.sberp.sbsoft.com
服务器群集配置:
集群管理机器上装wand6.1, ihs和web插件, 应用程序服务器机上就装was6.1(wand6.1)
管理机上要建立一个dm profile(Dmgr01), 普通机上就只建立一个app profile (AppSrv01)
在每个普通机上
C:/Program Files/IBM/WebSphere/AppServer/profiles/AppSrv01/bin/startServer.sh server1 启动 server1
C:/Program Files/IBM/WebSphere/AppServer/profiles/AppSrv01/bin/addNode.sh <DM machineName> <DM soap port>把节点加入到集中管理单元. soap端口号 默认为8879
注意这里add报错的话多半是因为dm机上hosts文件没有对该机的记录,加入即可。
然后到dm控制台上确认节点都已经加入,普通机上开机用PROFILE_HOEM/startNode命令来启动节点代理。
MYSQL数据源的配置见:http://www.devx.com/java/Article/31571/0/page/2,注意记得定制属性(serverName, port, databaseName), 测试一般不超过一个警告.
Flex的MessagingWorkManager配置见:http://www.webspherechina.net/?14092/viewspace-785 (这个现在还不确定是不是必须的)
然后在dm上建立群集,加入普通机的节点(可以使用节点上现有的app-server也可以新建)
然后把重构后的war包部署,注意映射模块是选群集cluster和ihs的web-server
数据库可以放在其中一台机器上也可以单独放一台机器上
这样这个结构大概就是:
本文详细介绍了如何将一个基于Flex、Spring、Hibernate和MySQL的Web应用程序从Tomcat迁移到Websphere集群环境。涉及内容包括WAR包重构、部署描述符修改、数据源配置、Flex MessagingWorkManager设置、集群服务器配置以及数据库服务器的选择。同时提供了关键配置链接以供参考。
465

被折叠的 条评论
为什么被折叠?



