Вот сценарий:
Я запускаю свое приложение Java / Spring на экземпляре Amazon EC2 Linux в режиме балансировки нагрузки с 3 серверами, которые могут увеличиваться или уменьшаться по мере необходимости.
Критерии увеличения: если загрузка ЦП превышает 30% в течение более 10 минут, добавьте еще 2 сервера.
Критерии уменьшения: если загрузка ЦП снижается до уровня ниже 15% в течение более 10 минут, удалите один сервер.
Загрузка (с blazemeter.com): увеличьте значение no. пользователей стабильно от 0 до 50 в течение примерно 15 минут, и остаются постоянными с этого момента.
Ответ:
- В первые 15 минут нагрузка увеличивалась до 50 ударов в секунду и оставалась стабильной в течение еще 5 минут. Загрузка процессора остается на уровне около 30%. Время отклика ниже 20 мс на этом этапе.
- Несмотря на то, что нагрузка составляла 50 ударов в секунду, примерно через 20 минут после запуска, загрузка ЦП резко возросла до 33% в течение более 10 минут, что вызвало повышение скорости. Время отклика резко увеличивается и колеблется от 5000 до 15000 мс.
- С двумя дополнительными серверами (количество серверов теперь 5) загрузка ЦП возвращается к 20%, но время отклика не показывает никаких признаков отступления. Он остается от 5000 мс до 15000 мс до конца периода тестирования до снятия нагрузки.
У меня вопрос: почему вы думаете, что время отклика не снизилось до нормального (около 20 мс), когда загрузка ЦП вернулась к нормальной (около 20%)?
Диаграмма загрузки ЦП
График времени ответа
Спасибо за ваше время:)