Про SPDY и ускорение Web’а
В Arstechnica появилась хорошая статья про SPDYeng — протокол ускорения загрузки веб-страниц который предлагают иccледователи из Google.
SPDY — это протокол расширяющий и дополняющий HTTP таким образом чтобы убрать из него все неоднозначности, вроде того что статус в ответе описан иначе чем остальные поля и сжатие запросов и ответов и так далее. Подробнее можно прочитать здесь — http://dev.chromium.org/spdy
При том что действительно, тема интересная важная и так далее, а Google при его массе и скорости может эту идею даже протолкнуть, на самом деле всё несколько сложнее. Собственно в статье в Arstecnica это изложено:
1. Сейчас SPDY работает только поверх сессий SSL что во-первых ограничивает кеширование данных, а во вторых не повлияет на то что большая часть контента в публичной части сети доступно не по SSL, и в третьих использование SSL априори создаёт дополнительную нагрузку на ресурсы клиента и сервера что также ограничивает применимость.
2. Протокол SCTP который там уже упоминается всё ещё в весьма зачаточном состоянии, примерно как IPv6, но IPv6 всё таки активно продвигается на страхе что адреса IPv4 скоро закончатся, а вот для SCTP такой мотивации нет, а изменений потребуется не меньше. В то же время без SCTP эффект от SPDY поверх TCP будет невелик.
3. По хорошему новый протокол бы надо обсуждать через IETF и прежде чем его активно продвигать, понять востребован ли будет он на рынке, да и вообще оценить нет ли там чего-либо неучтенного.
На мой взгляд подход должен быть иным — не подмена протокола, а организаций кеширования, prefetching и реорганизация контента под блочное кеширование.
А то есть менять надо не транспортный протокол который затронет операционные системы, сетевое оборудование, IDS системы, фаерволы, антивирусы и прочая, прочая.
Вместо этого можно поступить так:
1. Поисковики могут создавать свои CDN’ы и начать заключать договора с крупнейшими хостингами чтобы те предлагали их CDN своим клиентам по умолчанию и на бесплатной основе, а также заманивать владельцев сайтов в эти CDN за счет ускорения отклика от сайта что позволит и повысить удобство посетителям сайтов, так и позволит поисковикам собирать информацию быстрее. А где-то и в реальном времени.
2. Из SPDY взять те идеи которые не слишком меняют текущий HTTP протокол, например, сжатие заголовков HTTP, запрет на дублирование заголовков и так далее, а также добавить веб-сайтам способность идентифицировать что протокол поддерживается и предоставлять доступ к нему по определённому урлу.
3. Предложить механизмы, программы, продукты и так далее кеширования отдельных участков веб страниц и интегрировать эту информацию на уровне HTTP протокола. То есть создать возможность при запросе веб-страницы или любого иного документа с комплексным содержимым возвращать не один ETag код, а несколько хэшей/идентификаторов блоков, но не более 20 блоков. Далее с помощью расширения к HTTP запрашивать о том не изменились ли отдельные или все блоки и в результате получать не всю страницу или подтверждения что она не менялась, а статус частично изменено и данные только изменившихся блоков склейка которых происходит уже на клиенте.
Это в принципе не так уж сложно сделать, а эффект будет куда больше, поскольку это позволит локализовать статические куски контента при обновлении страниц, а, при некотором развитии этого подхода, распространять кеширование с одной страницы на их группы.
Например, если блок футера на страницах сайта является статическим, то он может быть включён в перечень таких глобально кешируемых участков и применятся также как применяются Cookie к определённому пути.
Да, это немного усложнит и увеличит HTTP запросы от клиента, но в любом случае себя оправдает, а при наличии веса Google можно было бы протолкнуть с куда большей вероятностью.
Поделиться в соц. сетях
-
http://twitter.com/sergey_shepelev Sergey Shepelev
-
http://metin2wiki.ru CSRedRat
Microsoft Translate
Рубрики
- BI (3)
- CEP (1)
- IBM (13)
- Novell (6)
- WTF (1)
- apple (3)
- blogging (61)
- couchdb (3)
- data.gov.ru (250)
- datasets (104)
- diagramming (11)
- e-Government (927)
- eGov (946)
- google (33)
- gtd (5)
- links (65)
- linux (19)
- microsoft (47)
- not so wtf yet (3)
- opengovdata.ru (198)
- opensource (56)
- productivity (2)
- saas (4)
- second life (2)
- security (6)
- semweb (15)
- sun (13)
- virtualization (16)
- vista (2)
- web (223)
- web 2.0 (108)
- wikileaks (1)
- yahoo (11)
- Без рубрики (4)
- Енот Поискун (17)
- Общественное благо (12)
- алгоритмы (73)
- алгоритмы (51)
- аналитика (19)
- антисео (5)
- бывает и такое (8)
- виртуализация (21)
- вопросы (20)
- госзаказ (172)
- идеи (29)
- из жизни (95)
- инновации (27)
- интересные проекты (7)
- информация (108)
- книги (2)
- метапост (1)
- открытое государство (51)
- открытые данные (10)
- поиск (93)
- почти несерьёзно (16)
- размышления (127)
- расшифровка реальности (10)
- робототехника (1)
- руководство проектами (3)
- скиур (19)
- социальные сети (45)
- социоранк (9)
- стандарты (22)
- стоит почитать (21)
- футуристика (1)
- электронное государство (945)
- юзабилити (25)
- юмор (14)
Метки
антиспам госзакупки гослюди госуслуги датасеты дебаты извлечение информации инновации кузьминов метаданные навальный открытое государство открытые данные поиск почти без иронии публичность раскрытие информации расшифровка реальности систематизация социоранг социоранк стартапы форматы файлов футуристика #belyh #rucamp #socamp 94-ФЗ antispam apps4russia icamp icamp2009 md5 ogp open government searchme semweb sha1 ssl usability






