Как диагностировать или уменьшить время ожидания веб-контента? - PullRequest
0 голосов
/ 25 октября 2011

Я наблюдаю непостоянную производительность на моем сервере, и мне трудно диагностировать / устранить проблему.По большей части страницы загружаются быстро, но в 10-20% случаев они загружаются очень медленно.На вкладке сети Chrome время ожидания равно 99% от лага.Я даже протестировал загрузку пустой страницы PHP, которая не выводила, и я все еще вижу, что время ожидания увеличивается на 10-20% просмотров страниц.

Я пытался синхронизировать сценарий PHP, и это согласованнонизкий на всех просмотрах страниц, включая те, которые имеют длительное время ожидания.Например, я могу загрузить пустую страницу, и она будет загружена через 150 мс, а затем я загружу ее снова, и она загружается за 8500 мс, но оба раза скрипт PHP выполнялся за <.5 мс. </p>

Любые идеи о том, чтоеще может быть причиной этого (я тестировал на нескольких компьютерах / сетях и получаю отчеты от пользователей со всего мира)?

Ответы [ 2 ]

0 голосов
/ 25 октября 2011

Проблемы с соединением / потеря пакета

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

Конечно, вы заметите, что проблемы непросто просмотр вашего сайта, но любой сайт в этом соединении.

Конфликт на сервере

Является ли это общим сервером, и могут ли другие клиенты на том же сервере использоватьвремя от времени чрезмерное количество операций ввода-вывода, ЦП или активных процессов Apache?

Вы бы отладили это с помощью команды top (для просмотра общего использования ЦП или очереди загрузки) или команды ps -AH v (длясм. количество активных процессов Apache и обзор других запущенных процессов).

0 голосов
/ 25 октября 2011

С интернет-серверами есть много областей, которые могут вызвать проблемы со временем загрузки. У меня были похожие результаты с одним веб-сайтом, которым я управляю. С интернетом он состоит из нескольких областей. Программное обеспечение / оборудование на вашем компьютере, ваш маршрутизатор, шлюз вашего провайдера, путь, по которому вы можете добраться до вашего хостинга, шлюз вашего хостинга и программное / аппаратное обеспечение на вашем сервере. Все это может вызвать узкие места в зависимости от текущей нагрузки. Наиболее распространенной причиной ожидания является поиск или сохраненная таблица маршрутизации. Это ваш компьютер arp и сетевой кеш, и его можно очистить, чтобы увидеть, исправляет ли он (в некоторых случаях это помогло). Вместо того, чтобы пытаться получить самый быстрый маршрут, он использует старые пути, которые теперь могут иметь большие нагрузки.

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

Без их проверки невозможно узнать, в чем проблема. Единственное, что я могу сказать, это проверить все, что вы можете, и запустить tracerouts / ping, чтобы проверить время сервера и используемый вами путь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...