
В настоящее время у меня есть сервер с 6-ядерным процессором E5-2620V3.
Я запускаю приложение Python с помощью nginx и gunicorn.
Если я провожу нагрузочное тестирование приложения с 150 клиентами в непрерывном цикле, то его пропускная способность составляет 20 тыс. запросов/минуту. Однако процессор используется только на 40%.
Я могу переключиться на тот же процессор с 12 ядрами.
Удвоит ли это мою пропускную способность, учитывая отсутствие узких мест ввода-вывода и памяти?
решение1
Вам необходимо выяснить, какое устройство является узким местом.
Пока что мы знаем, что дело не в процессоре, а это значит, что увеличение числа ядер не должно дать существенного эффекта или иметь небольшой отрицательный эффект, поскольку большинство процессоров с большим количеством ядер используют более низкие тактовые частоты.
Мне нравится использовать iotop для мониторинга использования диска, iftop для мониторинга сетевой нагрузки и htop для мониторинга использования процессора и оперативной памяти. Если вы поместите их все в tmux, вы сможете наблюдать за ними всеми одновременно. Найдите то, что больше всего загружено. В зависимости от того, что вызывает