JMeter访问redis缓存

Jmeter访问redis缓存

背景介绍:

第二次工业革命在20世纪初, 基于劳动分工的电力驱动时代, 人类大量使用流水线的电气化时代, 20世纪70年代 电子技术,工业机器人的使用提升了生产效率, 使生产自动化水平进一步提高, 人类进入了第三次工业革命. 第四次工业革命就是工业4.0 , 基于大数据, 物联网(机器人视觉传感器)融合的系统在生产中大规模使用, 使人类进入”智能化时代”. IT技术是4.0非常重要的核心, 是支撑未来长期技术性和经济周期的基础.

采摘文章:

http://gpj.mofcom.gov.cn/article/zuixindt/201611/20161101643333.shtml

IT 技术被提升到了一个前所未有的高度, 基于数据的增删改查, Redis是一个内存中的数据结构存储系统, 是数据库, 缓存和消息中间件. 支持数据持久化. Redis属NoSql, 是高性能的key-value存储系统.

看一个简单的 redis 列表(List)示例:

redis列表是简单的字符串列表, 按照插入顺序排列(后面会用到)

了解Redis的存取原理有助于帮助我们更好的理解实例.

从中可以看出在mykey的列表中, 用LPUSH方法插入了三个不同的值.

有了以上概念, 理解后面实例就容易多了.

Redis安装

要使用redis,必须要有环境, 这是必须的, 同时也为了演示方便, 选择本机环境.

本文不做过多篇幅介绍安装过程, 其他操作系统安装参考官网

https://redis.io/download

Mac上安装redis, 使用brew 命令

那redis 有哪些版本呢, brew可以告诉你

安装redis3.2 版本

brew install redis@3.2

启动redis

redis-server

查看进程

ps axu | grep redis

连接客户端: redis-cli -h 127.0.0.1 -p 6379 //-h host, -p 端口号

关闭 redis-cli shutdown

测试下Redis是否可用

redis server启动后, 推荐另开一个窗口执行下面命令

$redis-cli     // 进入redis客户端
redis 127.0.0.1:6379> PING   //ping命令
PONG     //redis返回 证明我们的redis正常可用

往redis里插入数据

如何往redis插入数据又回到了我们图一介绍的知识, 详见图一, 我们看下, 我的testdemo列表里有什么

redis中数据就此造好了

使用jmeter 访问redis数据集

JMeter创建线程组

在线程组下添加一个元件: 线程组->配置元件->jp@gc-Redis Data Set

备注: 这是一个插件,需要去https://jmeter-plugins.org/

插件都是放在%jmeter_home%/lib/ext 下, 重启jmeter即可使用该功能.

Data configuration:

  • Redis key: 就是我们的list名称 testdemo
  • Variable names: testdemo里输出了3组数据, 每组两个城市, 我们把它假设为departure,destination
  • Delimite: 分隔符 默认值是逗号
  • Data Source Type: 我们用list, 选项中还有set
  • Recycle Data on use: 是否循环数据True

Connection Configuration:

  • Redis server host: 你的redis 主机地址
  • Redis server port: 你的redis 端口
  • Timeout for connection in ms: 多少时间内连接超时 默认
  • Password for connection: redis 连接密码
  • Database: redis 的哪个数据库 默认index从0开始到15

添加一个http sample 来测试下

用现成的网址测试方便广网友动手操作, 这里使用网址:

http://blazedemo.com/reserve.php

入参就是从redis 里来的list值, 接下来添加一个查看树和Debug sampler, 方便我们查看和调试.看下最终线程组结构

执行起来

在http sampler里加了断言: Flights from ${departure} to 通过测试断言测试正确.

因为我们在Redis data set的 Recycle Data on use 使用了True, 所以每次执行都会在testdemo的list里进行循环, 每次执行结果就会不同. 断言里的使用变量 ${departure} 也方便我们灵活使用.

在jmeter访问测试redis时候, 推荐先了解redis的存储机制和基础知识,便于更好的在实际项目中合理的运用jmeter和redis,帮助我们铲除使用过程中的绊脚石.

Story:

巴甫洛夫只说了八个字:“要热诚而且慢慢来。”“热诚”,有持久的兴趣才能坚持到成功。“慢慢来”,不要急于求成,做自己力所能及的事情,然后不断提高自己;不要妄想一步登天,要为自己定一个切实可行的目标,有挑战又能达到,不断追求,走向成功.

原文发布于微信公众号 - 测试工程师成长之道(louiezhou001)

原文发表时间:2019-07-19

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券