Как сократить время ожидания сервера?

Я пытаюсь оптимизировать скорость моего сайта, и я использую отличный инструмент наpingdom.com, В настоящее время более 50% времени, необходимого для загрузки страницы, составляет «Подождите». время, как показано на скриншоте ниже. Что я могу сделать, чтобы уменьшить это? Кроме того, насколько типична эта цифра? есть ли на это критерии? Спасибо!

high server wait time

EDIT: Хорошо, позвольте мне уточнить несколько вещей. Не происходит никаких серверных сценариев или вызовов базы данных. Просто HTML, CSS, JS и изображения. Я уже сделал некоторые вещи, такие как push js в конец тега body, чтобы получить параллельные загрузки. Мне известно, что main.html и templates.html добавляют к общему времени ожидания синхронное выполнение после загрузки js.js, что не является проблемой. Я просто удивлен тем, сколько "жду" время есть для каждого запроса. Влияет ли на это расстояние до сервера? Как насчет того, чтобы находиться на общем сервере, это влияет на время ожидания? Есть ли какой-нибудь низко висящий фрукт, чтобы исправить эти проблемы?

enter image description here

 Gerrat07 июн. 2012 г., 21:40
Это не вопрос, связанный с программированием. Пытатьсяserverfault.com

Ответы на вопрос(5)

которые ожидает страница, вы можете убедиться, что эти запросы к серверу отправляются асинхронно параллельно, чтобы вы их сериализовали.

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

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

между браузером и сервером. CDN-прокси - лучший способ сократить указанное расстояние. Это в сочетании с собственными возможностями кэширования поможет обеспечить более быстрый отклик путем загрузки кэшированного объекта из ближайшего местоположения POP (точки размещения).

Эффект будет зависеть от географического местоположения пользователя и распространения CDN. Тем не менее, вы можете ожидатьзначительное улучшение50% -70% или более.

Исходя из опыта, я видел случаи, когда 90% контента кэшировалось и доставлялось напрямую с прокси-сервера, расположенного на другом континенте, с другой стороны земного шара.

"веб-браузер ожидает данные с сервера" это то, что определяет & quot; ждать & quot; время.

Это не так много, что вы можете сделать с помощью JavaScript или кода, чтобы это исправить.

 07 июн. 2012 г., 21:44
Это не то, что время ожидания.

время до первого байта сколько времени сервер отправляет первый байт с момента инициализации соединения. Если это высокий уровень, это означает, что вашему серверу нужно проделать большую работу для отображения страницы перед ее отправкой. Нам нужно больше информации о том, что ваш сайт делает для отображения страницы.

 26 дек. 2014 г., 13:51
Очень хорошо, это также может быть связано с временем доступа на вашем жестком диске / RAID. У меня были SSD-серверы с меньшим временем первого байта (TTFB), и сайты действительно загружались быстрее.
 31 янв. 2015 г., 14:30
Серверу, возможно, придется проделать большую работу, но в то же время ему может потребоваться много ожидания. Вам нужно разбить то, из чего состоит это прошедшее время, прежде чем знать, что нужно делать для самых больших побед.

льзование DNS Reversal Lookup. Это означает, что сервер пытается выяснить, как называется ваша машина, каждый раз, когда вы делаете запрос. Это может занять несколько секунд, и это объясняет, почему у вас много времени WAIT, а затем очень быстрая загрузка, потому что дело не в пропускной способности.

Очевидным решением для этого является отключение hostnamelookup в /etc/httpd/conf/httpd.conf

HostnameLookups Off

Однако ... этого обычно недостаточно. Дело в том, что во многих случаях apache по-прежнему выполняет обратный поиск, даже если вы отключили поиск по имени хоста, поэтому вам нужно внимательно посмотреть на каждую строку вашей конфигурации apache. В частности, одной из наиболее распространенных причин этого являются журналы. По умолчанию во многих установках Red Hat - Centos формат журнала включает в себя% h, что означает «имя хоста», и требует, чтобы apache выполнил обратный поиск. Вы можете увидеть это здесь:

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common

Вы должны изменить эти% h на% a, чтобы решить эту проблему.

 10 июл. 2014 г., 17:41
HostnameLookups был выключен, ноLogFormat был виновником Я получил 50% улучшения, изменив% h на% a.
 18 авг. 2014 г., 10:29
Я столкнулся с той же проблемой. Я использую WordPress, и сайт размещен на общем хосте. Я не могу найти местоположение файла, где я могу сделать эти изменения. Любые предложения приветствуются.
 06 авг. 2013 г., 23:52
Спасибо, приятель. Любой источник рекомендаций для таких советов, как это?
 16 авг. 2016 г., 20:59
После изменения с% h на% a он не вносил никаких изменений.
 24 апр. 2014 г., 02:12
@ & # xDC; nsalKorkmaz Вот, пожалуйстаhttpd.apache.org/docs/2.2/mod/mod_log_config.html  РЕДАКТИРОВАТЬ: Извините, я неправильно прочитал. Думал, ты сказал "любая рекомендация ресурса".

Ваш ответ на вопрос