The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

В состав HTTP-сервера Apache включён модуль с поддержкой протокола SPDY

19.06.2014 23:04

Компания Google сообщила об интеграции в основную кодовую базу HTTP-сервера Apache 2.4 модуля mod_spdy, содержащего реализацию протокола SPDY, составляющего основу будущего стандарта 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. По оценке разработчиков использование mod_spdy в сочетании с поддерживающими протокол SPDY браузерами позволяет более чем в два раза ускорить загрузку web-страниц, содержащих большое число внешних элементов.

Отдельный интерес представляет метод обеспечения мультиплексирования соединений в условиях архитектуры Apache, изначально рассчитанной на однопоточную обработку одного запроса в рамках одного соединения. Для обхода данного ограничения mod_spdy реализует дополнительное разделение по отдельным нитям потоков, связанных с обработкой соединений и запросов. Поток обработки соединений отвечает за декодирование фреймов SPDY и диспетчеризацию новых SPDY-запросов к пулу нитей с обработчиками запросов. Каждая нить с обработчиком запроса может обслуживать свой HTTP-запрос параллельно с другими запросами.

Протокол SPDY разработан для минимизации задержек при соединении и обмене данными между клиентом и сервером. По данным Google ускорение работы реальных сайтов при использовании SPDY составляет от 15% до 50%. SPDY добавляет сеансовый уровень поверх SSL, что даёт возможность обеспечить передачу нескольких одновременных потоков в рамках одного TCP-соединения. SPDY позволяет мультиплексировать запросы ресурсов, обрабатывать их параллельно и отправлять запросы с учетом динамически рассчитываемых приоритетов, увеличивая текущую пропускную способность. Использование SSL одновременно позволяет решить проблему с прохождением запросов через прокси серверы и позволяет организовать доставку данных по инициативе сервера, без специального запроса клиента (технология Server push). Дополнительное ускорение достигается за счёт сжатия HTTP-заголовков запроса и ответа.

  1. Главная ссылка к новости (http://googledevelopers.blogsp...)
  2. OpenNews: Компания Google представила основанный на UDP экспериментальный протокол QUIC для ускорения Web
  3. OpenNews: Доступен второй черновой вариант спецификации HTTP 2.0
  4. OpenNews: Предложение по формированию стандарта HTTP/2.0, на включение в который претендует SPDY
  5. OpenNews: Для http-сервера nginx представлен модуль с поддержкой протокола SPDY
  6. OpenNews: Компания Google опубликовала результаты оценки эффективности протоколов SPDY и HTTP/2
Лицензия: CC-BY
Тип: Программы
Короткая ссылка: https://opennet.ru/40042-mod_spdy
Ключевые слова: mod_spdy, spdy
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (21) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, A.Stahl (ok), 23:36, 19/06/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Т.е. ни пользователю ни админу ничего настраивать не надо? Ну может только собственно модуль подключить?
    Ок. Это хорошо когда не надо ничего делать.
     
     
  • 2.3, Аноним (-), 23:54, 19/06/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    сертификат то всё-равно ручками прописывать придется, так что работа дурака всегда найдет :)
     
     
  • 3.5, Аноним (-), 00:03, 20/06/2014 [^] [^^] [^^^] [ответить]  
  • +/
    В HTTP 2.0 шифрование все-таки опциональное.
     
     
  • 4.6, Аноним (-), 00:05, 20/06/2014 [^] [^^] [^^^] [ответить]  
  • –1 +/
    в смысле? spdy идет поверхъ https или вместе с бубном, если у вас нет желания заводить https :)
     
     
  • 5.10, Аноним (-), 02:22, 20/06/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В смысле читаем драфт http 2.0.
     
  • 2.7, Аноним (-), 00:20, 20/06/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Если уже поднят https, то проблем не будет. А с просто http сервером SPDY не дружит, т.к. нужно туннелирование (обычно SSL).
     
     
  • 3.9, Аноним (-), 00:48, 20/06/2014 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Очепятка - не SSL, а TLS.
     

  • 1.2, lucentcode (ok), 23:45, 19/06/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Положительная новость. Хотя сейчас всё меньше проектов используют apache без nginx в качестве фронтенда. А NGINX уже давно имеет поддержку spdy.
     
  • 1.4, Аноним (-), 00:03, 20/06/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Ха, нжинкс оказывается опача обштопал - там уж давно есть.
     
     
  • 2.8, имя (?), 00:46, 20/06/2014 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Только вот модуль до сих пор считается экспериментальным, с вытекающим:
    > This module is not built by default, it should be enabled with the --with-http_spdy_module configuration parameter.

    Так что кто кого в этом вопросе обошёл — вопрос.

     
     
  • 3.11, Аноним (-), 02:27, 20/06/2014 [^] [^^] [^^^] [ответить]  
  • –5 +/
    А апач такой весь из себя стабильный. Как с его тредом-на-запрос придет школьник с ab2, так и настанет ему стабилизец.
     
     
  • 4.12, angra (ok), 06:16, 20/06/2014 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Во-первых, стабильность и потребление ресурсов довольно слабо связаны.
    Во-вторых, таки попробуйте положить apache _на статике_ при помощи ab.
     
     
  • 5.14, Аноним (-), 12:35, 20/06/2014 [^] [^^] [^^^] [ответить]  
  • –3 +/
    > Во-первых, стабильность и потребление ресурсов довольно слабо связаны.

    Если сервак валится от тыкания палочкой каким-то школьником, чуть ли не с мобилки по GPRS - будем считать его неустойчивым к ресурсным атакам. Точка.

    > Во-вторых, таки попробуйте положить apache _на статике_ при помощи ab.

    Как раз народный способ заваливания апачей у скрипткидисов. Общая идея: берется файл пожирнее, качается помедленнее, лишь бы соединение не умерло. Открывается 100500 соединений, чтоб воркеров надолго узурпировать. Далее опач или выжирает все ресурсы в системе (у дефолтного админа который щелкал клювом) или просто забивает на обслуживание юзеров (если админ все-таки догадается залимитировать ресурсы, чтобы сервер не умер совсем). Но вы знаете, тред-на-запрос, как на этой схемке, да еще с фильтрами по обоим сторонам - тоже смотрится достаточно интересно для ресурсной атаки. Плечо атаки получается очень даже. В том плане что клиенту все это мало чего стоит, а вот сервер будет делать довольно много работы в пересчете на клиента. Что позволяет клиентам поабузить этот факт, выигрывая в соревновании по ресурсам при том что у атакующего и близко не обязано быть сравнимого по мощности сервака.

     
  • 4.16, Nicknnn (ok), 14:04, 20/06/2014 [^] [^^] [^^^] [ответить]  
  • +/
    А не используйте mod_php и не придётся в "тред на запрос".
     
     
  • 5.18, rob pike (?), 11:48, 21/06/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Только апач и нужен в 99% случаев именно для legacy php applications.
     

  • 1.13, Аноним (-), 09:11, 20/06/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Теперь ждём принятия mod_pagespeed в apache
     
  • 1.15, DmA (??), 13:46, 20/06/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Server push -теперь рекламу от гугла не остановит даже Adblock plus!
     
     
  • 2.19, Аноним (-), 12:07, 21/06/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > Server push -теперь рекламу от гугла не остановит даже Adblock plus!

    Чего бы это вдруг?

     

  • 1.17, Аноним (-), 20:16, 20/06/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Это типа прощай прокси на кучу народа и экономия трафика?
     
  • 1.20, Аноним (-), 00:35, 23/06/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    ну яндекс вон потестировал это спди и прирост производительности был порядка 5%, т.е. смысла нет заморачиваться.
     
     
  • 2.21, Аноним (-), 15:18, 25/06/2014 [^] [^^] [^^^] [ответить]  
  • +/
    У яндекса задачи могут отличаться от твоих. Надо в каджом отдельном случае тестировать.
     
     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2020 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру