一、双机热备环境的搭建
两台redhat企业版服务器(以下称server-a和server-b),每台机器都部署A和B两个应用,正常情况下用户只访问server-a上A应用和server-b上B应用。如果server-a上A应用无法访问,那么server-b上的A应用需要及时给客户提供服务;如果server-b上B应用无法访问,那么server-a上B应用需要及时给客户提供服务。该案例示意图如下:
domain1的端口号为5888,用于发布应用A(行政审批),domain2的端口号为6888,用于发布应用B(电子监察)。
双机热备软件采用的是redhat
cluster suit,要求对于domain1和domain2各提供一个shell脚本,包含三个函数: start(),stop(),还有status(),分别用于启动、停止域以及检查当前状态(该域是否启动)。
domain1和domain2的shell脚本雷同,以domain1的脚本为例:
#!/bin/bash
#
apusic Startup script for the Apusic Application Server
#
#
chkconfig: - 85 15
#
description: Apusic 5.1 is a JavaEE5.0 standard Application Server Implemention
#
processname: apusic
#
pidfile: /var/run/apusic.pid
#
apusic_home: /usr/local/apusic-5.1
#
Source function library.
.
/etc/rc.d/init.d/functions
prog=Apusic-5.1
pidfile=${PIDFILE-/var/run/apusic.pid}
lockfile=${LOCKFILE-/var/lock/subsys/apusic}
JAVA_HOME=/usr/java/jdk1.5.0_18
APUSIC_HOME=/kingdee/apusic-5.1
startapusic="$APUSIC_HOME/domains/domain1/bin/startapusic
-p"
stopapusic="$APUSIC_HOME/domains/domain1/bin/stopapusic
admin admin iiop://localhost:5888"
start()
{
echo -n $"Starting $prog: "
export JAVA_HOME
cd $APUSIC_HOME
$startapusic > /dev/null 2>&1
&
#daemon $startapusic
RETVAL=$?
echo
[ $RETVAL = 0 ] && touch
${lockfile}
return $RETVAL
}
stop()
{
echo -n $"Stopping $prog: "
export JAVA_HOME
cd $APUSIC_HOME
$stopapusic > /dev/null 2>&1
&
RETVAL=$?
echo
[ $RETVAL = 0 ] && rm -f
${lockfile} ${pidfile}
}
status()
{
chk_apusic=$(ps aux|grep domain1|grep -v grep|wc -l)
if
[ "$chk_apusic" = "0" ]
then
echo
"Checking Apusic Server:
failed!"
exit
1
fi
echo
"Checking Apusic Server:
success!"
exit
0
}
#
See how we were called.
case
"$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
status
;;
*)
echo $"Usage: $prog
{start|stop|restart|status}"
exit 1
esac
exit
$RETVAL
红色部分用于判断domain1的服务进程是否存在。
二、集群环境的搭建
两台redhat企业版服务器server-c和server-d用来做apusic应用服务器集群。
在server-c上放置loadbalancer和domain1两个域,在server-d上放置domain2。其中的loadbalancer域用来做负载均衡。
三、几个应用的移植
server-a和server-b上各自部署了三个应用:
行政审批系统(A应用)
电子监察系统(B应用)
审批申报系统
其中的审批申报系统是后来加上去的,未做双机,如果需要做双机的话办法与前两个应用相似。
server-c和server-d上部署了一个cms网站(集群)。
四、移植中遇到的几个主要问题:
问题1:一些页面图片无法显示。
解决方法:观察页面源代码,原来图片链接都写死在根目录。该应用需要置于根目录下,修改后正常显示。
问题2在电子监察的管理界面中添加或者修改含有中文字符的数据,会报ORA-01461的错误。
解决方法:应用服务器所使用的oracle驱动版本和实际不符,更换后已经可以正常添加删除修改。
问题3少数报表页面显示报错:
javax.servlet.jsp.JspTagException: com/runqian/report/view/CachedReportPool
解决方法:此系润乾报表的jar库未正确加载所致,间接由于apusic应用服务器独特的classloader机制。将相关jar包转移到域共享库中即可解决问题。
问题4
部分润乾报表显示乱码:
解决方法:
在报表相关的jsp页面起始加入"<%@ page contentType="text/html; charset=GBK" %>
"即可。
分享到:
相关推荐
Apusic+Apache集群配置.pdf
Apusic+Apache集群配置[文].pdf
linux环境下使用apache和apusic实现负载均衡
在服务器集群中,负载均衡是一个关键部分,它是集群系统中任务分配的核心环节.该文在比较3 种负载均衡策略的基础上分析了JBoss应用服务器集群负载均衡策略的特点,对国内第一个自主知识产 权Apusic应用服务器负载均衡...
本快速入门指南介绍了金蝶 Apusic 应用服务器软件(简称 AAS)V10 产品安装、启动、 卸载、管理与使用等基本操作,...务器的体系结构及其提供的服务和功能,从而展示 Apusic 应用服务器对开发大型应用系统 的支持能力。
Apusic密码修改指引
金蝶中间件(Apusic)--license
Apusic 7.0,2014,license,
金蝶中间件Apusic Eclipse/MyEclipse all-plugins,用于集成在eclipse做调试开发
2021年通用apusic license,适用于apusic9.0以上EAS(EAS8.0以上版本一般都可用),有效期到2021年12月31日。此apusic为5个连接数
管理Apusic Web服务器,管理Apusic Web服务器
Apusic5.1域配置,希望对正在使用Apusic5.1服务器的工作团队有所帮助。
EAS Apusic2016年的临时许可
金蝶Apusic应用服务器6.0是一款标准、安全、高效、集成并且具有丰富功能的企业级应用服务器(Enterprise Application Server),它用于实现基于SOA的企业应用和服务,为企业应用和服务提供坚不可摧的基础架构支撑。...
apusic文件,apuasic是国产中间件,隶属金蝶 中国. 数据库连接攻略
Apusic+SQL-Server的调优记录
EAS apusic5.0 许可.许可到期时间2088年!
Apusic OperaMasks很全的JSF的例子,什么都有,如:TREE 、GRID、FORM、BOX、MENU、DIALOG、AJAX。都很漂亮的。
2019年通用apusic license,适用于apusic9.0以上EAS,有效期到2019年12月10日
Windows2003+Apusic6.0安装部署手册