Мы создали контейнер ECS/Fargate с 2 VCPU и 4 ГБ оперативной памяти, запустив в нем сервер NodeJS. Когда мы проводим нагрузочное тестирование с использованием JMeter, VCPU достигает максимума 60% и выравнивается с использованием памяти, близким к 10%. Даже когда мы увеличиваем нагрузку с помощью JMeter, все равно.
Что может быть причиной того, что процессор достигает максимума 60% и гаснет?
amazon-web-services amazon-ecs aws-fargate
1 ответ
Что может быть причиной того, что процессор достигает максимума 60% и гаснет?
Процессор не достигает 60%, но достигает 100%.
Если ваше приложение является однопоточным и ограничивающим фактором является ЦП, тогда ЦП 1 будет работать на 100%.
Разделите 100% на общее количество ЦП, на два и вы получаете общую загрузку системы ± 50%.
Теперь, как правило, второй ЦП не будет полностью бездействовать, помимо тестируемого приложения будут выполняться какие-то другие процессы, которые могут добавить, скажем, 20% нагрузки на ЦП номер два.
Затем вы получаете системную нагрузку:
100 + 20
-------- = 60%
2
(Обратите внимание, что это только совершенно случайное предположение, и ваша проблема может быть чем-то гораздо более интересным, чем артефакт того, как рассчитывается нагрузка.)