您的位置:首页 > 其它

银行中间业务平台的几种性能测试方案

2010-06-23 11:51 267 查看


上图为某银行中间业务平台的系统部署图:

其中被测系统主要有应用服务器部分、渠道前置机部分和通信机(业务接口机),可以分以下几点来分析:

要弄清楚渠道和渠道前置机之间是一种什么样的通信方式、渠道前置机和应用服务器是一种什么样的通信方式、应用服务器和通信机又是一种什么样的通信方式;

清楚它们之间的通信方式后,就可以模拟各个渠道进行性能压力测试了;

对各个单服务器进行性能测试,此时可以选择有代表性的交易进行,唯一区别就是通信协议不一样,对应用服务器进行性能测试,因为渠道前置机服务器和应用服务器之间是tuxedo协议进行通信,所以用loadrunner进行测试的时候,就选tuxedo7的通信协议;

当对渠道前置机进行测试的时候,因为各个渠道都是通过socket通信方式接入的,所以用loadrunner测试的时候,可以选择winsocket通信协议进行测试;

当测试通信机服务器的时候,由于通过应用服务器有一个协议转换,所以应用服务器和通信机服务器之间又是socket通信方式,所以在单独测试通信机服务器的时候,又是选择loadrunner中的winsocket协议。

当把这三个单独的部分测试完成后,就可以进行一个联调的性能测试,此时的交易发起方是从渠道发起,选择的协议是winsocket通信协议,此时看在三个服务器中的某个服务器出现瓶颈的时候,系统能否满足需求。具体代码如下,可以参考下:

单独测试前置机服务器:

#include "lrs.h"

Action()
{

lr_start_transaction("同城本行");

lrs_create_socket("socket0", "TCP", "RemoteHost=198.88.88.232:7990", LrsLastArg);

lrs_send("socket0", "buf0", LrsLastArg);

//lr_think_time(6);

lrs_receive("socket0", "buf1", LrsLastArg);

lrs_close_socket("socket0");

lr_end_transaction("同城本行", LR_AUTO);

return 0;

}

单独测试应用服务器:

Action()
{
//lr_think_time(51);
data_0 = lrt_tpalloc("CARRAY", "", 81920);

/* Request CARRAY buffer 1 */
lrt_memcpy(data_0, sbuf_1, 757);
lrt_display_buffer("sbuf_1", data_0, 757, 757);
data_1 = lrt_tpalloc("CARRAY", "", 81920);
tpresult_int = lrt_tpcall("ACCMGR",
data_0,
757,
&data_1,
&olen,
0);
/* Reply CARRAY buffer 1 */
lrt_display_buffer("rbuf_1", data_1, olen, 3417);
lrt_abort_on_error();

lrt_tpfree(data_1);
lrt_tpfree(data_0);
return 0;

}

单独测试通信机:

#include "lrs.h"

Action()
{

lr_start_transaction("存款");

lrs_create_socket("socket0", "TCP", "RemoteHost=192.168.100.25:32001", LrsLastArg);

lrs_send("socket0", "buf0", LrsLastArg);

lrs_receive("socket0", "buf1", LrsLastArg);

lrs_close_socket("socket0");

lr_end_transaction("存款", LR_AUTO);

return 0;
}

联调性能测试的代码和单独测试前置机服务器的代码一致,都是从渠道发起。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: