Назад | Перейти на главную страницу

Почему истекает время ожидания NGINX?

У меня есть приложение с примерно 200 тыс. Пользователей, и я запускаю сервер NGINX + Gunicorn (Python) за балансировщиком нагрузки AWS EC2.

Я не понимаю, почему мои запросы всегда 4k / мин, но только иногда я получаю половину трафика из-за тайм-аута. В большинстве случаев все запросы в порядке, но иногда он начинает зависать, и почти все запросы получают таймауты.

Я заметил, что этот шаблон количества текущих подключений имеет волнообразный характер и колеблется от 1000 до 0. Являются ли запросы на объединение NGINX каким-либо образом? Как я могу различать request_time, чтобы выяснить, правильно ли настроен NGINX или мой сервер Python просто слишком часто вызывает дополнительные медленные конечные точки.

Я прикрепил снимок экрана одного из серверов на панели инструментов NGINX Amplify.

Любые идеи относительно частей журналов NGINX или Amplify, которые я могу изучить, чтобы определить, является ли это проблемой конфигурации NGINX или размещенный процесс Python блокируется? Спасибо!

Поищите в своих показателях CloudWatch, особенно на предмет «упал» или «не удалось». Здесь вы можете увидеть все подробности о вашем балансировщике нагрузки и ваших инстансах EC2. Я не знаю, какие типы экземпляров вы используете, но может случиться так, что вы постоянно чрезмерно используете экземпляры T2 / T3 и у вас заканчивается кредит. Я бы подумал, что некоторые части вашего потока по какой-то причине ограничиваются, и это не обязательно проблема самих экземпляров.