Реактивные веб-сайты

Это добавит в дерево

зависимостей искомую цепочку.

Для большей ясности описанное выше конечное дерево загружае-

мых модулей можно представить так:

dom

-> base

-> utils

-> callbacks

Очевидно, что возможно и гораздо более глубокое дерево зависимостей,

загружаемых асинхронно. Но при его реализации не стоит забывать о на-

кладных издержках на передачу и инициализацию каждого файла: может

оказаться так, что выгоднее объединить часть модулей в один большой файл.

Естественно, весь указанный функционал уже добавлен в послед-

нюю версию YASS (http://yass.webo.in/).

5.6. oUO U‡IOA CDN E O ?AI A„O A‰?U

В заключение главы давайте рассмотрим применение аппаратных ре-

шений для оптимизации структуры веб-страниц вашего сайта.

CDN (англ. Content Delivery Network) — распределенная сеть хране-

ния данных. Предназначена как для обеспечения отказоустойчивости, так

и для максимально быстрого времени ответа при запросе файлов. Инфор-

———————— Page 183————————

182 РЕАКТИВНЫЕ ВЕБ-САЙТЫ

мация данного раздела подготовлена при помощи специалистов первой

CDN в России — NGENIX.

После общения с множеством специалистов возникла следующая

проблема: все знают, что CDN — это очень хорошо, это правильно, это

стоит использовать. Данный раздел пытается ответить на этот вопрос и

объяснить, в каких случаях CDN может решить возникающие проблемы и

ряд технологических и бизнес-задач.

Рис. 5.12. Схема CDN, источник: ngenix.net

5.6.1. NOOUUOIOOU? IOIUAIU‡

Нередко бывает, что каждый час простоя сайта интернет-магазина

измеряется в весьма значительных суммах. Если отказ сервера, на ко-

тором расположен сайт, произошел ночью (по времени технической

поддержки), а магазин должен

быть доступен 24 часа в сутки

(например, в связи с широким ге-

ографическим покрытием поль-

зователей), то это может вылить-

ся в значительные финансовые

потери.

Распределенная сеть серве-

ров позволяет легко решить эту

проблему: если отказывает один

из имеющихся серверов, то его ме-

сто тут же занимает самый близ-

кий из сетевых соседей. Таким об-

———————— Page 184————————

3

8

Оптимизация структуры веб-страниц 1

разом, конечный пользователь не замечает каких-либо перебоев в рабо-

те сайта.

Дополнительно данные в распределенной сети еще и резервируются

на большом количестве серверов, что сводит вероятную возможность их

потери практически к нулю: для этого необходимо, чтобы разом отказала

вся сеть, а такое статически невозможно, если только не будет заранее

тщательно спланировано злоумышленниками с привлечением весьма до-

рогих технологических средств.

5.6.2. C?OOI‡? OIO?OOU? A‡„?UAIE

Благодаря тому, что сетевой маршрут между конечными пользовате-

лями и серверами с информацией снижен до минимума (а сами серверы

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

значительной.

В качестве примера стоит привести следующие цифры: время отве-

та обычного сервера, расположенного на VPS (даже не на shared-хос-

тинге), составляет 50-200 мс (в зависимости от различных условий, в

том числе от загруженности канала). Для CDN это число очень редко

превышает 10 мс.

5.6.3. eIEEAIEA I‡„?UAIE I‡ OA?‚A? — EOUO?IEI EIUO?I‡?EE

Пользовательская нагрузка при использовании CDN распределяется

между серверами сети, а исходный сервер может быть использован толь-

ко для получения обновлений информации. Если обновления происходят

крайне редко (и на сайте не представлены динамические страницы, зави-

сящие от поведения пользователя), то для исходного сервера просто не

нужны большие мощности, и он может быть заменен на сервер минималь-

ной конфигурации.

Таким образом, вся серверная нагрузка может быть возложена на

CDN, а основной сервер будет отвечать только за актуальность представ-

ляемой информации.

5.6.4. e‡AIA?AIEA «U?EAIO„O» IOIUAIU‡

В некоторых случаях (хостинг программного обеспечения или ме-

диа-материалов, создание интерактивных промо-сайтов) исходный сер-

вер с информацией может быть загружен «медленными» запросами (ко-

торые могут длиться минутами и часами, расходуя серверные ресурсы и

не давая осуществить более быстрые запросы для получения остальной

———————— Page 185————————

184 РЕАКТИВНЫЕ ВЕБ-САЙТЫ

информации на сайте).

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130