zoukankan      html  css  js  c++  java
  • jmeter(34)-测试redis非关系型NoSQL数据库

    测试Redis非关系型NoSQL数据库

    Redis是内存数据库

    Redis是开源的内存数据结构存储,可以用作数据库,缓存和消息代理。
    作为内存数据库,它将所有数据保存在内存中。
    Redis在读取/写入数据时实现高性能。
    https://jmeter-plugins.org/wiki/RedisDataSet/
    操作:我们通过jmeter中redis的插件来完成,redis插件的名字是 Redis Data Set 

    添加--配置元件--jp@gc - Redis Data Set

    我添加的时候出现了一点问题,原本我发现在install plugins那里看是已经安装好的了

    但是怎么加载都不出来,后来我在install plugins进行不勾选此插件进行卸载,然后重启后再重下载,又重启,终于好了。

    来自官网https://jmeter-plugins.org/wiki/RedisDataSet/

    1.资料配置 本节介绍如何在Redis中存储数据以及如何将其映射到JMeter变量。本节中的所有选项均为必填项。

    • RedisKey:列表或集名称
    • 变量名称:数据集导出到测试元素的变量名称。这些等效于CSV数据集中的CSV列标题。user,pwd
    • 分隔符:在Redis列表或Set中存储的行内使用的分隔符,默认“,”逗号
    • 数据源类型:数据是作为列表还是集合加载到Redis,下拉框选择List or Set
    • 使用时回收数据:默认为true

      true或者false (数据是否可以重复使用或者应该在使用时是否应该从redis中删除)
      如果为true,则将在多个迭代,线程和负载生成器之间重复使用数据。等同于继续使用数据。
      如果为false,则在使用时将消耗数据。一旦数据耗尽,将不再执行进一步的迭代。如果必须确保在负载生成器之间使用唯-数据,这将非常有用。


      官方:使用时是否可以重复使用数据,或应将数据从Redis中删除。
      如果为true,则将在多个迭代,线程和负载生成器之间重复使用数据。如果为false,则数据将在
      使用消耗数据用完后,将不再执行任何迭代。如果必须确保在负载生成器之间使用唯一的数据,这将很有用。

    2.连接配置

    • Redis服务器主机:Redis服务器的主机名。
    • Redis服务器端口:通常是标准Redis端口6379。
    • 数据库:Redis数据库,通常设置为0。默认16个库   选择使用的是第几个数据库,我是db10 
    • 连接超时(毫秒)默认2000(非必填)
    • 连接密码:为需要认证的Redis数据库添加密码(非必填)

    3.Redis池配置-这些选项由Apache Commons Pool库控制

    https://commons.apache.org/proper/commons-pool/api-1.6/org/apache/commons/pool/impl/GenericObjectPool.html


    key是jmeterlr 

    value是soapui和postman

    已知这是List数据类型




    遇到问题:

    不知道为什么我连接redis获取数据不成功,但我用rdm工具连接是正常的。

    待调试,

    引用redis的数据

    2020-03-03 21:16:19,452 INFO o.a.j.e.StandardJMeterEngine: Running the test!
    2020-03-03 21:16:19,454 INFO o.a.j.s.SampleEvent: List of sample_variables: []
    2020-03-03 21:16:19,455 INFO o.a.j.g.u.JMeterMenuBar: setRunning(true, *local*)
    2020-03-03 21:16:19,550 INFO o.a.j.e.StandardJMeterEngine: Starting ThreadGroup: 1 : 线程组
    2020-03-03 21:16:19,550 INFO o.a.j.e.StandardJMeterEngine: Starting 1 threads for group 线程组.
    2020-03-03 21:16:19,550 INFO o.a.j.e.StandardJMeterEngine: Thread will continue on error
    2020-03-03 21:16:19,550 INFO o.a.j.t.ThreadGroup: Starting thread group... number=1 threads=1 ramp-up=1 delayedStart=false
    2020-03-03 21:16:19,551 INFO o.a.j.t.ThreadGroup: Started thread group number 1
    2020-03-03 21:16:19,551 INFO o.a.j.e.StandardJMeterEngine: All thread groups have been started
    2020-03-03 21:16:19,551 INFO o.a.j.t.JMeterThread: Thread started: 线程组 1-1
    2020-03-03 21:16:20,065 INFO o.a.j.t.JMeterThread: Stop Thread seen for thread 线程组 1-1, reason: org.apache.jorphan.util.JMeterStopThreadException: End of redis data detected
    2020-03-03 21:16:20,065 INFO o.a.j.t.JMeterThread: Thread finished: 线程组 1-1
    2020-03-03 21:16:20,065 INFO o.a.j.e.StandardJMeterEngine: Notifying test listeners of end of test
    2020-03-03 21:16:20,074 INFO o.a.j.g.u.JMeterMenuBar: setRunning(false, *local*)




  • 相关阅读:
    Android的消息机制
    AndroidVolley框架的使用
    Android事件分发机制浅谈(三)源码分析(View篇)
    Java 编程下简介 Class 与类加载
    [ZJOI2007]最大半连通子图
    [HNOI2012]永无乡
    [HEOI2016/TJOI2016]排序
    CSS 条件缩放图片
    CSS图片垂直居中
    最近写 ASP.NET 中出现的错误 & 实现DataTable和DataSet类型的客户端/服务器端自动转换
  • 原文地址:https://www.cnblogs.com/yiyaxuan/p/12396859.html
Copyright © 2011-2022 走看看