使用jmeter工具在AWS中进行的性能测试在持续45-60分钟的持续时间后返回403错误

问题描述 投票:1回答:2

我正在使用jmeter工具在AWS环境中运行性能测试。我们有一个启用了自动扩展的集群,并具有memcache会话故障转移jar。我们正在使用jmeter主从,所以我们没有从JTL文件中获取响应数据。测试持续时间为45分钟后返回响应代码:

响应代码:403响应消息:禁止

如何解决这个问题?

在研究了更多后,我发现原因可能是memcache的会话故障转移jar我将jar版本升级到1.6.5但仍面临同样的问题。

performance amazon-web-services memcached jmeter libmemcache
2个回答
1
投票

1
投票

看起来你正在使用ELB。 ELB附加了CNAME。 AWS会更改附加到CNAME的IP。这经常发生。

测试开始时,JMeter会对ELB CNAME执行DNS查找。然后缓存响应。从此时起,测试会将流量发送到现在缓存的响应中的IP地址。

结果是,在某些时候(在IP更改之后),您正在测试现在可以属于不同服务器或属于NO服务器的旧IP。这可能就是你获得403的原因。

要解决此问题,您需要将Cache TTL设置为0(零)。这将指示JMeter不缓存DNS查找响应并始终再次执行(这在任何情况下都更加真实)。您应该将以下内容添加到JMeter行:-Dsun.net.inetaddr.ttl = 0。

更多信息:http://community.blazemeter.com/knowledgebase/articles/94060-testing-amazon-elbs

© www.soinside.com 2019 - 2024. All rights reserved.