Pull to refresh

Преодолеваем хабраэффект при помощи Coral CDN

Reading time 3 min
Views 4.2K
Вы выкладываете на Хабрахабре гиперссылку на интересный сайт, а он вскорости обрушивается под наплывом посетителей, начинает подтормаживать или вообще перестаёт отвечать.

Вы помещаете в свою блогозапись иллюстрацию с другого сайта, а она вскорости не выдерживает напора зрителей, перестаёт отображаться или сменяется на уродливое уведомление о превышении объёмов выделенного ей траффика.

Таковы бывают неприятные проявления хабраэффекта — естественного DDoS, аналогом которого на Заокраинном Западе является слэшдот-эффект.

Ну а как противостоять естественному DDoS?

Первыми приходят на ум наиболее бесхитростные способы.

Можно сохранить картинку к себе на диск, а затем вручную закачать на более устойчивый хостинг (а не на Radikal.Ru и не на ImageShack.US, которые оказались непригодными), после чего использовать новый адрес картинки.

Целый сайт уберечь от хабраэффекта куда сложнее. Можно, конечно, дать ссылку на кэш Google (или на слепок Peeep, который организовал snusmumrik), однако там сохраняется только HTML-код страницы, а иллюстрации её могут продолжать отваливаться по хабраэффекту.

К тому же все эти примитивные способы слишком уж отвлекают. Приходится открывать новые вкладки, приходится копировать туда и оттуда информацию. Разве не существует способа, который позволял бы, никуда не уходя, прямо в HTML-коде своей блогозаписи указать на необходимость защиты некоторого URLа от хабраэффекта?

Да, такой способ существует.

Достаточно прибавить суффикс «.nyud.net» к доменному имени ресурса. Например, вместо адреса картинки «http://oduinn.com/images/2010/blog_fennec_ff36_cake.jpg» вписывайте адрес «http://oduinn.com.nyud.net/images/2010/blog_fennec_ff36_cake.jpg», а вместо адреса страницы «http://newtimes.ru/articles/detail.php?ID=14721» вписывайте адрес «http://newtimes.ru.nyud.net/articles/detail.php?ID=14721», и так далее.

Благодаря этому трюку копия ресурса попадает в ту CDN (сеть распространения контента), которая называется Coral CDN. О Coral CDN вы можете прочитать либо в Википедии, либо на сайте Coral CDN смотря что предпочитаете.

Подобно торрентовому файлообмену, Coral CDN является открытым программным обеспечением (со свободно доступным исходным кодом) и использует DHT (распределённые хэш-таблицы) для передачи файлов между своими узлами. Однако хэш-таблица у Coral CDN особенная: все алгоритмы и топология Coral CDN специально разработаны таким образом, чтобы сеть избегала чрезмерной загруженности всех своих узлов, когда выдаёт читателю желаемые файлы. Узлы объединяются для этого в «концентрические» кластеры, каждый из которых только по необходимости общается с вышестоящими узлами, и тем избавляет их от перегрузки.

Помимо преодоления хабраэффекта, Coral CDN может использоваться для обхода «чёрных списков» цензуры, прошитых в DNS, или для открытия сайта в обход глючного, неработоспособного DNS-сервера, если не повезло с провайдером. Также при помощи Coral CDN можно проверять иллюстрации с тех сайтов, на которых вы подозреваете действующий запрет прямых ссылок (hotlinking), потому что в Coral CDN такой сайт отдаст, ясное дело, не желаемую картинку, а графическое уведомление о запрете.

На Хабрахабре Coral CDN можно также использовать для такого просмотра комментариев ко блогозаписи, при котором не откручивается к нулю список непрочитанных комментариев. Если, допустим, вы желаете все комментарии прочесть уютно и дома, но загодя кинуть взгляд (второпях и не до конца) с мобильника, то взглядывайте через Coral CDN.

Есть у Coral CDN и ограничения по объёму файлов и по сроку их хранения. Технические подробности изложены в тамошней вики. Там даже есть рецепт по привинчиванию Corel CDN к своему сайту.
Tags:
Hubs:
+118
Comments 47
Comments Comments 47

Articles