【问题标题】:Can you specify multiple rest endpoints in a jmeter test plan?您可以在 jmeter 测试计划中指定多个休息端点吗?
【发布时间】:2013-11-15 16:20:07
【问题描述】:

是否可以在这种情况下指定多个服务器 REST 端点以在 Jmeter 测试计划中运行测试?是否有任何其他 API 性能测试工具允许多个 REST 端点同时运行测试请求?

我有一个由 2 个主节点(仅向 Jmeter 客户端公开的索引、搜索和 REST 端点)、3 个数据节点(仅数据存储)和一个 Jmeter 实例组成的 ElasticSearch 集群。

经过一段时间的测试,我突然意识到,我实际上是在测试 Jmeter 在任何给定时间的单个 REST 端点的性能,而不是主节点的集体性能,因为一个人只能在 @987654321 中指定单个服务器名称@jmeter 测试计划中的字段。

在查看在线文档和多个博客之后,看起来要么需要一个负载均衡器,要么使用多个 Jmeter 客户端实例和多个 BASE_URL's 来实现这一点。

堆栈溢出自动建议说这“似乎是一个主观问题,可能会被关闭”。虽然我同意主观性部分,但我相信有很多人遇到过类似的问题,因此在我筛选更多文档时倾向于发布它以希望得到答案。

谢谢,

d

【问题讨论】:

  • 您在 Jmeter 中使用什么采样器来运行您的测试?您可以将 HttpRequest 采样器的服务器名称或 IP 参数设置为您想要的任何值,这样您就可以拥有一个命中节点 A 的采样器和一个命中节点 B 的采样器。
  • 最初我使用的是 HTTP 请求默认值,但现在按照您的建议,我在一个线程组下添加了两个 HTTP 请求采样器,具有 2 个不同的主节点 IP。有用!!非常感谢你:)

标签: elasticsearch jmeter performance-testing


【解决方案1】:

是的,您至少可以通过两种方式做到这一点:

选项 1 如果您的服务器数量是固定的。

为每个目标 URL 创建 1 个线程组并在其中嵌套一个 HTTP Request Defaults,您可以在其中更改 服务器名称或 IP

HTTP Request中的服务器名称或IP字段为空

选项 2

如果可以接受每个 HTTP 改变 HOST 将您的 URL 放入 CSV 文件并使用 CSV DataSet 并在其中声明变量主机:

并在 HTTP 请求的 服务器名称或 IP 字段中使用 ${host} 变量

【讨论】:

    猜你喜欢
    • 2014-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多