一、概述
  使用Loadrunner对IBM MQ进行性能测试,需要用到java vuser以及java编码知识。此次先介绍什么是IBM MQ,然后java vuser的使用与配置细节,后介绍IBM MQ的测试脚本。
  二、IBM MQ介绍
  IBM MQ(IBM Message Queue)是IBM的一款商业消息中间产品,适用于分布式计算环境或异构系统之中。消息队列技术是分布式应用间交换信息的一种技术。消息队列可驻留在内存或磁盘上,队列存储消息直到它们被应用程序读走。
  通过消息队列应用程序可独立地执行,它们不需要知道彼此的位或在继续执行前不需要等待接收程序接收此消息。
  对列管理器
  队列管理器是MQ系统中上层的一个概念,由它为我们提供基于队列的消息服务。
  对列
  队列是消息的安全存放地,队列存储消息直到它被应用程序处理。
  通道
  通道是MQ系统中队列管理器之间传递消息的管道,它是建立在物理的网络连接之上的一个逻辑概念,也是MQ产品的精华。
  在 MQ中,主要有三大类通道类型,即消息通道,MQI通道和Cluster通道。
  消息通道是用于在MQ的服务器和服务器之间传输消息的,需要强调指出的是, 该通道是单向的,它又有发送(sender), 接收(receive), 请求者(requestor), 服务者(server)等不同类型,供用户在不同情况下使用。
  MQI通道是MQ Client和MQ Server之间通讯和传输消息用的,与消息通道不同,它的传输是双向的。
  群集(Cluster)通道是位于同一个MQ 群集内部的队列管理器之间通讯使用的。
  消息
  在MQ中,我们把应用程序交由MQ传输的数据定义为消息,我们可以定义消息的内容并对消息进行广义的理解,比如:用户的各种类型的数据文件,某个应用向其 它应用发出的处理请求等都可以作为消息。消息有两部分组成:消息描述符(Message Discription或Message Header),描述消息的特征,如:消息的优先级、生命周期、消息Id等;消 息体(Message Body),即用户数据部分。在MQ中,消息分为两种类型,非性(non-persistent)消息和性(persistent)消息,非 性消息是存储在内存中的,它是为了提高性能而设计的,当系统掉电或MQ队列管理器重新启动时,将不可恢复。当用户对消息的可靠性要求不高,而侧重系统的性 能表现时,可以采用该种类型的消息,如:当发布股票信息时,由于股票信息是不断更新的,我们可能每若干秒会发布一次,新的消息会不断覆盖旧的消息。 性消息是存储在硬盘上,并且纪录数据日志的,它具有高可靠性,在网络和系统发生故障等情况下都能确保消息不丢、不重。
  此外,在MQ中,还有逻辑消息和物理消息的概念。利用逻辑消息和物理消息,我们可以将大消息进行分段处理,也可以将若干个本身完整的消息在应用逻辑上归为一组进行处理。
  三、Loadrunner java vuser的使用与配置
  准备
  loadrunner 11
  jdk 1.6(32位)
  所需jar包名、下载地址:http://download.csdn.net/detail/macau2008/2117657(如有变更请自行搜索)
  com.ibm.mq.jar
  connector.jar
  com.ibm.mq.jmqi.jar
  com.ibm.mq.headers.jar
  com.ibm.mq.commonservices.jar
  创建
  打开loadrunner选择新建Java Vuser,如下图所示:

  配置
  开启Run-time Setting,导入之前准备好的jar,如下图所示:

  配置Java VM,先选中红框所示单选框,然后输入本机所安装JDK位置,如下图所示: