【问题标题】:Jmeter and MemCached Sets and GetsJmeter 和 MemCached 设置和获取
【发布时间】:2021-12-21 18:51:45
【问题描述】:

很抱歉,如果我问的是微不足道的问题,但我正在尝试使用 Memcached 和 Jmeter。我有一个 Memcached 服务器设置(据我所知),并且能够通过 telnet IP PORT 向它发出 telnet 请求,另外还可以使用命令 set 和 get 适当地设置和获取。

如果这可能是错误的选择,现在给我指出一个不同的应用程序;但我的理解是 Jmeter 应该允许我使用等效的 Set 和 Get 请求来冲击服务器。

不幸的是,实验平台是一台运行 Rockylinux 的远程 linux PC,据我了解,它类似于 CentOS / RedHat(我没有设置这部分);因此,我在 Linux PC 上没有要启动的 GUI。但是,我已经在 Windows 上的本地 PC 上打开了 Jmeter,并且知道我应该能够发送测试文件并运行它。

我跟随these instructions尝试设置TCP采样器并设置“要发送的文本”字段如下;在执行有关预编译器的链接中的附加步骤之后。

set tutorialspoint 0 900 9${CR}${LF}
memcached${CR}${LF}
quit${CR}${LF}

将上述内容作为无头 jmeter 会话运行不会产生任何称为 [./jmeter -n -t "Sample.jmx" -l testresults.jtl"] 的错误,但是当我通过 telnet 连接时,我也没有看到键“tutorialspoint”的值得到更新。手动执行获取和设置时,我看到了更新。有什么想法我可能做错了吗?检查日志表明 ResponseCode 200 OK 符合预期。是否有调试某些东西的好方法在无头设置中?

感谢您的宝贵时间。

【问题讨论】:

    标签: java jmeter memcached


    【解决方案1】:

    我相信最简单的方法是使用Memcached Java Client library

    1. 下载spymemcached-2.12.3.jar并将其放到JMeter安装的“lib”文件夹(或JMeter Classpath中的任何其他位置)

    2. 重新启动 JMeter 以拾取 .jar

    3. JSR223 Sampler添加到您的测试计划中并使用以下代码sn-ps:

      • def client = new net.spy.memcached.MemcachedClient(new InetSocketAddress('your-memcached-host', your-memcached-port)) - 用于连接服务器
      • client.set('tutorialspoint', 900, 'memcached').donememcached 写入 tutorialspoint 键 15 分钟
      • client.get('tutorialspoint') - 读取 tutorialspoint 键的值
      • client.shutdown() - 断开连接

    有关 JMeter 中 Groovy 脚本的更多信息:Apache Groovy - Why and How You Should Use It

    演示:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-12-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-25
      • 2018-05-29
      • 1970-01-01
      相关资源
      最近更新 更多