Тайм-аут запроса nginx-tornado-django - PullRequest
2 голосов
/ 25 апреля 2010

Мы используем nginx-tornado-django для предоставления веб-сервисов. То есть веб-страницы нет. Сервер nginx служит в качестве балансировщика нагрузки. Сервер имеет 8 ядер, поэтому мы запустили 8 процессов tornado-django на каждом сервере. Memcached также используется для повышения производительности. Количество запросов в день составляет около 1 миллиона на сервер. Мы используем MySQL в качестве внутренней базы данных.

Код проверен и верен. Наше профилирование показывает, что обычно каждый запрос обрабатывается в течение 100 мс. Проблема в том, что мы обнаруживаем, что около 10 процентов запросов страдают от истечения времени ожидания. Многие запросы даже не достигли торнадо. У меня действительно нет большого опыта по настройке nginx / tornado / MySQL. Сейчас я понятия не имею, что происходит не так. Любой совет оценен.

1 Ответ

1 голос
/ 22 июля 2010

Вы можете захотеть отдельно профилировать каждый компонент и уровень: nginx, tornado, django и mysql

Я не уверен в деталях того, что делает ваше приложение, и это только предположение, но возможнопроисходит замедление чтения / записи данных в mysql.Но ваше профилирование должно определить, где именно происходит проблема.

...