Тестирование производительности в AWS с использованием инструмента jmeter возвращает ошибку 403 после продолжительности 45- 60 минут.

Я запускаю тест производительности в среде AWS с помощью инструмента jmeter. у нас есть кластер с включенным автоматическим масштабированием и наличием jar-файлов аварийного переключения сессии memcache мы используем ведущее устройство jmeter, поэтому мы не получаем данные ответа из файла JTL. Код ответа, возвращаемый через 45 минут тестовых сообщений:

Код ответа: 403 Ответное сообщение: запрещено

Пожалуйста, дайте мне знать, как решить проблему. Спасибо

После более подробного изучения я обнаружил, что причина может быть в сбоях jar сессии сессии memcache. Я обновил версию jars до 1.6.5, но все еще столкнулся с той же проблемой. Пожалуйста, дайте мне знать, если у кого-нибудь есть решение.

2 ответа

Вы используете ELB? Если это так, прочитайте здесь: http://community.blazemeter.com/knowledgebase/articles/94060-testing-amazon-elbs

Похоже, вы используете ELB. ELB имеет прикрепленное к нему CNAME. AWS меняет IP-адрес, прикрепленный к CNAME. Это случается довольно часто.

Когда ваш тест начинается, JMeter выполняет поиск DNS для ELB CNAME. Ответ затем кэшируется. С этого момента тест отправляет трафик на IP-адрес, который был в ответе, который теперь кэшируется.

В результате в какой-то момент (после изменения IP-адреса) вы тестируете старый IP-адрес, который теперь может принадлежать другому серверу или принадлежать НЕТ серверу. Вероятно, поэтому вы получаете 403.

Чтобы решить эту проблему, вам нужно установить Cache TTL на 0 (ноль). Это будет указывать JMeter НЕ кэшировать ответ поиска DNS и всегда делать это снова (что в любом случае более реалистично). Вы должны добавить в свою строку JMeter следующее: -Dsun.net.inetaddr.ttl=0.

Более подробная информация здесь: http://community.blazemeter.com/knowledgebase/articles/94060-testing-amazon-elbs

Другие вопросы по тегам