上图为某银行中间业务平台的系统部署图。
其中被测系统主要有应用服务器部分、渠道前置机部分和通信机(业务接口机),可以分以下几点来分析:
要弄清楚渠道和渠道前置机之间是一种什么样的通信方式、渠道前置机和应用服务器是一种什么样的通信方式、应用服务器和通信机又是一种什么样的通信方式;
清楚它们之间的通信方式后,就可以模拟各个渠道进行性能压力测试了;
对各个单服务器进行性能测试,此时可以选择有代表性的交易进行,唯一区别就是通信协议不一样,对应用服务器进行性能测试,因为渠道前置机服务器和应用服务器之间是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; } |