У меня Ubuntu 14.04.5 LTS (i686) на капле Digital Ocean с 2x2,4 ГГц ЦП и 4 ГБ физической памяти. Я запускаю на нем приложение web2py с Apache и mod_wsgi. На коробке установлено несколько дополнительных модулей python, например numpy и opencv2. База данных - MySQL 5.5.
А Сайт Wordpress на другом сервере это называется приложение web2py с помощью php-curl. Обычно время отклика составляет 2-5 секунд. Но иногда это таймауты (время отклика переходит в>1000 секунд). Я добавил точки регистрации в приложении Web2py, и они говорят, что после достижения приложения все завершается в 2-3 секунд. Но в журнале доступа Apache2 время отклика регистрируется как число, превышающее 1000 секунд. В журнале доступа значок время запроса примерно то же самое, когда запрос инициируется с сайта Wordpress.
Может ли кто-нибудь указать, как узнать причину этой прерывистой медленной реакции?
Спасибо
Наконец-то я смог выяснить причину проблемы. Это был оператор подключения к удаленной базе данных в файле модели по умолчанию приложения web2py. Это соединение с базой данных нигде не использовалось в приложении. Но поскольку он был в файле модели, всякий раз, когда вызывается функция контроллера, приложение пытается без необходимости подключиться к этой удаленной базе данных.
Сначала я добавил точки регистрации повсюду в приложении, но не добавил в файл модели приложения по умолчанию; Поэтому в журналах ничего не говорится о первопричине. Затем я протестировал приложение, просто заменив содержимое папки приложения один за другим файлами демонстрационного приложения (которое поставляется с web2py) и помог выявить основную причину проблемы. Затем основная причина была проверена путем добавления записи в журнал в начале и в конце файлов модели по умолчанию для приложения.
Чтобы обнаружить основную причину тайм-аута, вы можете использовать php slowlog, который объяснит, какая функция за это отвечает.
Вы должны изменить свой www.conf
и изменить 0
значение опции по умолчанию request_slowlog_timeout
. Например :
request_slowlog_timeout = 10s
Вы можете прочитать немного больше об активации slowlog Вот, и взгляните на некоторые распространенные причины медлительности Вот.