Веб-сервер работает очень медленно

Мой веб-сервер работает на PHP 5 и MySQL 5.0. Когда я скопировал приложение, разработанное на CAKE PHP, сервер работал очень медленно. Организация, предоставляющая файлы, без проблем запускает одно и то же приложение. Версии, развернутые на их сервере, также одинаковы. У меня нет возможности связаться с ними, кроме одной операции (щелкнув ссылку), другие работают без сбоев.

Скажите пожалуйста, нужно ли что-то менять в php.ini? Поскольку он работает на одном сервере, это не имеет никакого отношения к коду приложения. Загрузка страницы (с некоторыми операциями с базой данных) занимает около 40 секунд на сервере Xeon с интернет-соединением 1 Мбит / с (равно и выше).

Сервер работает на RHEL 5.

4 ответа

Обычно это происходит, когда php генерирует много предупреждений и уведомлений, если display_errors отключен, вы не видите. Apache занимается сохранением логов. Проверьте логи в /var/log/apache2/

Это app/cache каталог для записи? Если нет, CakePHP необходимо заново создавать файлы классов для каждой загрузки страницы. Это требует много ресурсов.

Это только одна возможность. Определенно также проверьте предложения от других людей, которые ответили.

Измените настройки mysql, чтобы записывать все в медленный журнал запросов. Добавьте%D к вашей конфигурации журнала apache. Используйте Firefox в качестве клиента и установите Firebug.

Прочитайте логи и посмотрите страницу водопадов в firebug.

(подсказка: я бы начал с того, что у вас нет неразрешимых DNS-имен ни в одном коде / конфигурации)

Если ответ не очевиден, спросите здесь, предоставив детали того, что вы нашли.

Все эти ответы, а также итоговые голоса - просто мусор.
Я не могу поверить, что такое невежество и догадки могут когда-либо существовать.

Это совершенно законный вопрос программирования, однако плохо заданный и даже худший ответ.

Представьте, что вы больны и приходите к врачу.
- А тошнит! - говорит ты, - дай мне что-нибудь. Вас не пугает, если доктор даст вам лекарства без какой-либо диагностики?
На всякий случай, подумав: "Это помогло какому-то человеку и, возможно, поможет этому". Разве это не звучит странно?, Но вы все здесь действуете точно так же! Но так не должно быть.

Нужно сначала исследовать, поставить диагноз, и только потом заказывать лечение.

Каждый проклятый здесь должен узнать, что такое профилирование.
И говорить только о профилировании.

Вы должны выяснить, какая именно причина вызывает такое влияние на производительность. Каждый ответ здесь должен научить вас, как это сделать.

40 секунд - это ужасно много времени, никакие рецепты "тонкой настройки" не могут помочь. Где-то есть серьезная неправильная конфигурация. Но веб-сервер - это не единая система. он состоит из множества частей - базы данных, веб-сервера, программного кода, статических файлов и т. д. Итак, вы должны найти определенную часть, вызывающую такую ​​медлительность. Только тогда вы можете попросить определенного лечения.

Итак, прежде всего вы должны быть уверены - какая страница загружается медленно? Что оно делает? Какие части этого работает медленно? С помощью microtime(1) Функция, которую вы можете измерить потребление времени различными частями этой страницы. Таким образом, вы можете найти проблемную часть. И так далее.

Вы можете проконсультироваться здесь обо всех этих шагах, но вы должны дать все возможные отзывы, а не просто спросить меня, я болен, дать мне лекарство Мой сервер работает медленно, что делать.

Другие вопросы по тегам