xaker

JsDelivr: продвинутая CDN с открытым исходным кодом

  • пятница, 21 марта 2014 г. в 03:10:26
http://www.xakep.ru/post/62229/

Системный администратор Дмитрий Акулов с коллегами из компании MaxCDN разработал набор библиотек и плагинов jsDelivr, с помощью которого любой веб-разработчик может легко подключить к своему веб-сайту быструю и бесплатную сеть доставки и дистрибуции контента (CDN).

Трафик CDN не дешевый, но здесь все абсолютно бесплатно благодаря нескольким спонсорам, которые предоставляют в бесплатное пользование свои CDN-серверы. Главные из спонсоров — MaxCDN, CloudFlare и Cedexis.

Система работает следующим образом. Когда пользователь заходит на сайт с jsDelivr, то файлы к нему передаются с ближайшего и самого быстрого для него места. На данный момент в системе работает 81 сервер по всему миру, в том числе серверы MaxCDN и CloudFlare, а также 14 дополнительных VPS-серверов.

Уникальность системы заключается в том, что поддерживается несколько провайдеров, так что в случае DDoS-атаки на одного из них трафик автоматически переходит на другого. При этом jsDelivr использует продвинутую балансировку нагрузки. У каждого пользователя в фоновом режиме замеряется пинг ко всем CDN-серверам, после чего трафик идет через самый быстрый из них. При чрезмерной нагрузке одного из CDN-серверов нагрузка автоматически перераспределяется. Более того, запросы двух пользователей из одного города могут быть направлены на разные CDN, если они пользуются услугами разных интернет-провайдеров, от которых трассировка к хосту отличается. Ведь используются реальные тесты производительности, а не синтетические.

Разработчики jsDelivr предлагают всем желающим использовать бесплатную CDN, а также собственные модули произвольной функциональности, которые подключаются к CDN через jsDelivr API.