Компания Google сообщила (http://googledevelopers.blogspot.ru/2014/06/modspdy-is-now-a...) об интеграции (https://svn.apache.org/viewvc/httpd/mod_spdy/trunk/) в основную кодовую базу HTTP-сервера Apache 2.4 модуля mod_spdy (http://code.google.com/p/mod-spdy/), содержащего реализацию протокола SPDY (http://dev.chromium.org/spdy), составляющего (http://www.opennet.dev/opennews/art.shtml?num=37387) основу будущего стандарта HTTP/2.0. Модуль позволяет интегрировать в HTTP-сервер прозрачную поддержку всех базовых возможностей SPDY, а также определённых в черновом варианте спецификации HTTP/2.0 средств по мультиплексированию потоков.
Для организации SSL-соединений mod_spdy использует штатный модуль mod_ssl, дополненный поддержкой расширения NPN TLS HTTPS. Так как сжатие заголовков производится на этапе обработки соединений, а не на стадии формирования запроса, mod_spdy совместим с другими модулями Apache, т.е. сжатие заголовков не мешает работе модулей, манипулирующих HTTP-заголовками. После загрузки модуля и указания директивы "SpdyEnabled on" все обслуживаемые HTTP-сервером сайты автоматически становятся доступными через протокол SPDY при открытии сайта браузером, поддерживающим SPDY.
В настоящее время поддержка протокола SPDY присутствует в большинстве современных браузеров, включая Firefox, Chrome, Opera и Internet Explorer 11. По оценке (http://www.youtube.com/watch?v=vEYKRhETy4A) разработчиков использование mod_spdy в сочетании с поддерживающими протокол SPDY браузерами позволяет более чем в два раза ускорить загрузку web-страниц, содержащих большое число внешних элементов.
Отдельный интерес представляет метод обеспечения мультиплексирования соединений в условиях архитектуры Apache, изначально рассчитанной на однопоточную обработку одного запроса в рамках одного соединения. Для обхода данного ограничения mod_spdy реализует дополнительное разделение по отдельным нитям потоков, связанных с обработкой соединений и запросов. Поток обработки соединений отвечает за декодирование фреймов SPDY и диспетчеризацию новых SPDY-запросов к пулу нитей с обработчиками запросов. Каждая нить с обработчиком запроса может обслуживать свой HTTP-запрос параллельно с другими запросами.
<center><a href="http://3.bp.blogspot.com/-V3awGUEFUn0/T42j1LXTouI/AAAAAAAABV... src="http://www.opennet.dev/opennews/pics_base/0_1334829992.png" style="border-style: solid; border-color: #606060; border-width: 1px;" title="" border="0"></a></center>
Протокол SPDY разработан (http://www.opennet.dev/opennews/art.shtml?num=33638) для минимизации задержек при соединении и обмене данными между клиентом и сервером. По данным Google ускорение работы реальных сайтов при использовании SPDY составляет от 15% до 50%. SPDY добавляет сеансовый уровень поверх SSL, что даёт возможность обеспечить передачу нескольких одновременных потоков в рамках одного TCP-соединения. SPDY позволяет мультиплексировать запросы ресурсов, обрабатывать их параллельно и отправлять запросы с учетом динамически рассчитываемых приоритетов, увеличивая текущую пропускную способность. Использование SSL одновременно позволяет решить проблему с прохождением запросов через прокси серверы и позволяет организовать доставку данных по инициативе сервера, без специального запроса клиента (технология Server push). Дополнительное ускорение достигается за счёт сжатия HTTP-заголовков запроса и ответа.
URL: http://googledevelopers.blogspot.ru/2014/06/modspdy-is-now-a...
Новость: http://www.opennet.dev/opennews/art.shtml?num=40042