技术开发 频道

非常好的实践:基于Oracle RAC构建WPS6.2高可用性

RAC RAC的集群配置

    为了支持Oracle RAC环境,WPS在数据源的JDBC URL中引入了多重地址列表功能,使得URL地址如下所示:

    jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=9.125.70.176)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=9.125.70.177)(PORT=1521))(FAILOVER=on)(LOAD_BALANCE=on))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=RAS)))

图12:Oracle RAC数据源URL

    替换HOST和SERVICE_NAME属性值以满足实际环境。建议读者拷贝以上字符串以避免输入错误。更改每一个数据源的URL信息,保存设置并保证重新测试仍然可以成功。

测试用例场景CitiApp简介

    CitiApp基于“快速开发,易于更改”为原则,以Web客户端,SCA模块和BPEL流程组合而成,用户通过登陆JSP页面输入需要处理的数据量,SCA模块随机生成对应的数据,在BPEL流程中对业务对象进行简单处理(如,赋值,更改属性等)再通过JDBC适配器将处理后的业务对象以记录的形式插入应用数据库中。由于该流程简单,部署方便,在用户指定事件数连续不断发送业务请求,适用于进行测试集群环境下的负载均衡和失败切换功能。

    CitiApp主要由以下三部分构成:

    Web模块: RecoverDriverUI

    用户登陆http://<localhost:9080>/RecoveryDriverUI/Driver.jsp输入所需处理的数据量

    SCA模块:AccountRouting

    在POJO中通过随机方法生成业务对象(Business Object)并为每个Business Object创建处理实例,通过异步调用进入Account Creation流程。

图13:AccountRouting

    BPEL长流程模块

    在BPEL长流程中对业务对象进行简单处理,并通过JDBC适配器插入应用数据库中。

图14:AccounCreation的BPEL流程
图15:AccounCreation的调用关系
0
相关文章