С нажатием SPDY, там какая-либо точка в далеком будущем, истекает заголовки?

Во-первых, определите узкое место в системе (замедлите запрос PostgreSQL, замедлите IO, медленно рабочие сценарии). Затем используйте стандартные контрольные инструменты (вершина, htop, iostat, vmstat, pgtop, iotop) для определения причины. Далее, Вы находите решение (pgtune, параметр ядра, смонтируйте опцию, Java vm опция, перепишите исходный код).

2
задан 14 October 2013 в 20:55
2 ответа

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

Источник: http://www.chromium.org/spdy/link-headers-and- server-hint

3
ответ дан 3 December 2019 в 09:05

Если вам действительно нужно оптимизировать время загрузки первой страницы:

  • Сгенерируйте сигнатуру (подстроку md5/sha хэша) всех статических файлов, необходимых при загрузке первой страницы. Обычно это только базовый css + js для bootstrap. Оттуда обычно js загружает вещи (особенно клиентские приложения, так что вам не нужен будет push сервера и клиенты будут использовать кэш соответствующим образом)
  • Установите длительный "bootstrap-версия" cookie в качестве подписи версии bootstrap.
  • Когда клиент запрашивает страницу:

    • если cookie версии bootstrap не обновляется или отсутствует, инициируйте push сервера для bootstrap-файлов.
    • В противном случае, предположим, что клиент кэширует их (может и нет, вызывая небольшую регрессию, но в 99% случаев она будет)

Таким образом, вы достигнете очень высокой эффективности и загрузка первой страницы будет эффективно выглядеть как повторные посещения с кэшем из-за server push.

Go и реализации node spdy позволяют вам поиграть с server push. Модули nginx/apache AFAIK пока не имеют таких возможностей. Надеюсь, вскоре они добавят его на основе заголовков, предоставленных приложением, или подобных им.

.
4
ответ дан 3 December 2019 в 09:05

Теги

Похожие вопросы