先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新软件测试全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024b (备注软件测试)
正文
目前业界中比较知名的mq产品有kafka、rabbitmq、rocketmq等。今天我主要来介绍下如何使用Jmeter来向rocketmq发送消息,实现对mq发消息功能的性能测试。
先来简单介绍下Rocketmq
RocketMQ 是一款分布式、队列模型的消息中间件,是阿里巴巴集团自主研发的专业消息中间件,历经多次天猫双十一海量消息考验。目前已经捐赠给Apache基金会,并于2016年11月成为Apache 孵化项目。
01 MQ基本概念
Message:消息,消息队列中信息传递的载体
Topic:消息主题,一级消息类型,通过 Topic 对消息进行分类
Tag:消息标签,二级消息类型,用来进一步区分某个 Topic 下的消息分类
Producer:消息生产者,也称为消息发布者,负责生产并发送消息
Consumer:消息消费者,也称为消息订阅者,负责接收并消费消息
02 RocketMQ 的 4 个组件
分别是 nameserver、broker、producer 和 consumer
Broker:集群最核心模块,主要负责 Topic 消息存储、消费者的消费位点管理(消费进度)
Producer: 消息生产者,每个生产者都有一个 ID(编号)
nameserver:存储当前集群所有 Brokers 信息、Topic 跟 Broker 的对应关系
Consumer:消息消费者,每个订阅者也有一个 ID(编号)
03 MQ消息收发模型
理解上面几个概念后,我们来编写Jmeter脚本。
在idea中创建一个Java工程,并引入Rocketmq和Jmeter的依赖包,先编写一个demo脚本。Rocketmq的消息发送代码非常的简单,几行代码轻松搞定,代码如下:
运行脚本,可以看到打印的结果“SEND_OK”字样,代表消息发送成功。
登录到rocketmq控制台页面,可以搜索到刚才发送的消息。
到目前为止,测试脚本已经调试通过,只需要将脚本转换为Jmeter的脚本即可。具体分为以下几步:
1、 创建一个测试类,实现Jmeter的JavaSamplerClient接口,需要实现接口中的4个方法,分别为:
setupTest:脚本的初始化操作,每个线程启动时执行,且仅执行一次
runTest:Jmeter线程循环执行的方法
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注软件测试)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
32)]
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!