一种消息中间件性能测试方法技术

技术编号:29683774 阅读:70 留言:0更新日期:2021-08-13 22:07
本发明专利技术属于消息处理和性能测试技术领域,提供一种消息中间件性能测试方法。包括如下步骤,测试软件环境和硬件环境的准备;根据实际使用中常用的消息传递场景决定消息中间件需要测试的消息传递模式,并确定消息传递参与者中消息发布者和消息消费者的参与数量;消息生产者程序和消息消费者功能实现方式设计;消息生产者和消息消费者程序运行;监控消息传递过程中资源消耗;进行数据记录与分析;如果决定消息中间件需要测试的消息传递模式不止一个,则重复上述步骤直至完成所有所需测试的消息传递模式为止。本发明专利技术提出了在测试消息中间件性能时消息消费者、消息生产者程序功能实现方式,明确了评价消息中间件性能的指标。

【技术实现步骤摘要】
一种消息中间件性能测试方法
本专利技术属于消息处理和性能测试
,具体涉及一种消息中间件性能测试方法。
技术介绍
消息中间件是可以进行消息发布、订阅以及管理的组件。消息中间件的组成包含消息生产者、消息消费者、消息主题。部分消息中间件还存在消息代理服务器组件。消息中间件可以起到降低耦合度、流量削峰的作用,在信息通信领域起着非常重要的作用。目前市面上存在的消息中间件有:ActiveMQ、Kafka、RockeMQ、RabbitMQ、FastRTPS、OpenDDS等。消息中间件的性能测试可以帮助开发人员进行技术选型,预测消息中间件在部署环境中的信息处理能力,辅助决策当前组织架构的合理性。目前较为广泛使用的性能测试工具有LoadRunner、JMeter等,其中LoadRunner通过配置多个虚拟用户用于模拟真实场景,Jemeter能通过多个线程并发取样。但它们都偏向于HTTP服务器和FTP服务器的测试且操作流程较为复杂,不能满足消息中间件的性能测试需求。同时在实际使用过程中,开发人员需要了解消息中间件的处理时延、资源消耗等非常细节的事务本文档来自技高网...

【技术保护点】
1.一种消息中间件性能测试方法,其特征在于,包括如下步骤:/nS1、测试软件环境和硬件环境的准备;/nS2、根据实际使用中常用的消息传递场景决定消息中间件需要测试的消息传递模式,并确定消息传递参与者中消息发布者和消息消费者的参与数量;/nS3、消息生产者程序功能实现方式设计;/n消息生产者具备以下功能:建立消息发布连接,发布主题消息可选择,发布模拟数据的大小可选择,对于确定的模拟数据发布的消息总数可选择,对于确定的模拟数据发布频率可选择,可在每一条模拟数据中附加一个发送时间戳ST

【技术特征摘要】
1.一种消息中间件性能测试方法,其特征在于,包括如下步骤:
S1、测试软件环境和硬件环境的准备;
S2、根据实际使用中常用的消息传递场景决定消息中间件需要测试的消息传递模式,并确定消息传递参与者中消息发布者和消息消费者的参与数量;
S3、消息生产者程序功能实现方式设计;
消息生产者具备以下功能:建立消息发布连接,发布主题消息可选择,发布模拟数据的大小可选择,对于确定的模拟数据发布的消息总数可选择,对于确定的模拟数据发布频率可选择,可在每一条模拟数据中附加一个发送时间戳STi;
S4、消息消费者程序功能实现方式设计;
消息消费者具备以下功能:建立消息订阅连接,订阅主题消息可选择,可解析每条消息中的发送时间戳STi,统计接收流量统计Flow,统计接收消息总数RN,接收数据长度l,接收消息后获取接收时间RTi,统计每条接收消息时延DTi,统计最大时延DTmax,统计最小时延DTmin,统计平均时延DTavg,统计丢包率FP,其中



DTi=RTi-STi(i=1,..,RN)(2)
DTmax=max(DTi)(i=1,..,RN)(3)
DTmin=min(DTi)(i=1,..,RN)(4)






其中(6)中TRN为期望接收消息总数;
S5、消息生产者程序运行;
确定某次测试过程中消息生产者发布的主题消息T,发布模拟数据的大小为L,发布的消息总数为SN,发布频率为F,根据所述步骤S2中确定的消息发布者参与数量运行相应数量的消息发布者程序,确定每个消息生产者发布的主题消息t,发布的模拟数据的大小l,发布的消息总数sn,发布频率f,其中sm为消息发布者参与数量
t=T(7)
l=L(8)
sn=SN/sm(9)
f=F(10)
S6、消息消费者程序运行;
确定某次测试过程中消息消费者订阅的主题消息T,根据所述步骤S2中确定的消息消费者参与数量运行相应数量个消息消费者程序,记录每一个消息消费者...

【专利技术属性】
技术研发人员:胡广倪明蔡万增张文彬王俊杰吴穹胡凯凡
申请(专利权)人:中国人民解放军六三六六零部队
类型:发明
国别省市:新疆;65

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1