Это моя первая настройка балансировки нагрузки и веб-сервера. У меня проблемы с настройкой моего uWSGI с оптимальными параметрами.
У меня AWS ALB спереди и служба ECS работает с uWSGI сзади, что вызывает мое приложение flask. Я протестировал несколько вариантов процессов и потоков в своем локальном экземпляре docker и нашел оптимальный вариант (процессы = 2, потоки = 7), основанный на вычислениях моего приложения. Я протестировал (JMeter) в своем локальном экземпляре docker с несколькими вариантами (от процессов = 1, потоков = 1 до процессов = 2, потоков = 7). Я ясно увидел хорошее улучшение пропускной способности при увеличении процесса и потока.
processes = 2
threads = 7
enable-threads = True
Но когда я развернул его (uWSGI + Flask app docker) в ECS с ALB впереди, я вижу та же производительность независимо от того, какое количество процессов и потоков я установил в uWSGI.
Пожалуйста, дайте мне знать, чего мне здесь не хватает.
Примечание: ECS работает с 3 задачами и в журналах I Я могу видеть соответствующее количество процессов / потоков, порождаемых в каждой задаче. Но я не уверен, почему увеличение / уменьшение процесса / потока не влияет на пропускную способность при развертывании в AWS ALB + ECS setup.