Pull to refresh

Comments 32

Капитанская статья, да и заголовок желтоват. Почему именно гугл? Такие проблемы могут постичь любой сторонний CDN. А если ты подключаешь в своём проекте с большой клиентской базой библиотеки из сторонних CDN, то виноват не гугл, а только ты сам. Поднимай свою сеть, не надейся на чужих людей, которые тебе ничего не должны.


К слову, недоступность CDN не самая большая проблема. Хуже, если её скомпрометируют, и вместо обычной библиотеки будет отдаваться её вредоносная копия. Такое уже было с jquery.

+1

Google тут вообще не при делах, ни в общем случае, ни как пример для статьи. Особенно для заголовка.

Сори за капитанский ответ, но потому, что гугл заблокирован в Китае, где проживает пятая часть населения планеты. Речь не о том, что CDN — это зло, а о том, что использование именно Google CDN портит ваш сайт для части вашей аудитории.


Выбор CDN'а и само решение его использовать выходит за рамки статьи, потому что это не реклама, а желание сделать интернет доступнее и лучше

Речь не о том, что CDN — это зло, а о том, что использование именно Google CDN портит ваш сайт для части вашей аудитории.

Ну это понятно. Просто гугл и Китай — это один частный пример.
В общем же можно было сказать так: в продакшене не подгружайте жизненно необходимых ресурсов (особенно тех, которые в head) на страницу из внешних источников, если не уверенны на 99% в их доступности. И используйте CDN по назначению, а не просто как внешнее хранилище крохотных css-стилей и js-библиотек.

Я физически проживаю в Китаю и страдаю от того, что у того же StackOverflow загрузка страницы занимает 30 секунд без VPN. Так что для меня это пример ни разу не частный :)


Я абсолютно с вами согласен по поводу head'а, и это один из вариантов решения проблемы.


Статья не является "наездом" на Google — он тут ни при чем. Это призыв к разработчикам починить свои сайты, потому что многие коллеги даже не догадываются о существовании этой проблемы.

Сделать geoip на уровне фаервола и dnat на порт, где слушает версия сайта с каким-нибудь китайским cdn-ом прокатит?

Почти всегда да, если geoip достаточно точный. То ли Apple, то ли кто-то еще из "больших", кому китайский рынок важен, так делает

Согласен, абсолютно любой CDN может быть заблокирован госорганами конкретной страны. На этот случай всегда нужно иметь фолбеки.
Взвешивать надо…
Кто-то может и электричество сам производит под ИТ.
А кто-то все в лямды в облаках запихал и радуется… На клиента надо ориентироваться…

Я как то Cloudflare пользовался бесплатно. Так в один момент их IP попадал под блокировку РКН а потом перестал работать поддомен. Я перенёс на них только поддомен. Видимо они решили что я их услугами не пользуюсь. Сайт остался без изображений и видео.

Спасибо за дополнение. У меня с cloudflare пока проблем не было, но это определенно повод задуматься

Треть из заблокированных Роскомнадзором IP-адресов принадлежат Cloudflare.
Всё просто. Владей своим сервисом сам. Точка.
Оркестрация рулит, имхо
Думаю, со временем эта проблема уйдёт в прошлое по мере того, как станет возрастать употребление P2P-распределённой файловой системы IPFS, которая одновременно сыграет роль CDN (причём такой CDN, в которой узлы доставки — сами пользователи) и роль хостинга статических (неизменных) файлов (например, библиотечных джаваскриптов определённой версии). Достаточно браузеру одного китайца преодолеть Стену для того, чтобы скрипт разошёлся по всей Поднебесной.

О, это было бы очень здорово, мне даже сложно представить, сколько новых интересных проблем и решений, это нам принесет.

Расскажите этим людям о Tger Tree Hash. Вместо Tiger хеша можно использовать тот же Sha256 будет Sha256 Tree Hash. И не надо изменять исходный файл для того чтоб не плодить тучи новых хешей которые можно использовать только внутри IPFS.


Преимущества Tree Hash в том что файл можно делить на любые блоки (1024 байта * 2x) и он самопроверяемый.


В таком случае если человек получит файл по ссылке не имея клиента IPFS сможет проверить что файл соответствует хешу в ней.


Кстати формат блока я так и не увидел в документации.

Мне например всегда было интересно, почему в браузеры не встроят самые популярные JS библиотеки, от этого их дистрибутив не намного вырастет.

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

Мало было и есть проблем с поддержкой стандартов HTML, CSS и JS среди разных браузеров разных версий, давайте добавим проблемы с поддержкой нестандартных библиотек! Плюс, тогда нужен будет некий менеджер пакетов для этих библиотек, встроенный в сам браузер, который тоже должен быть стандартным для всех браузеров. А уж с версионированием библиотек вообще веселуха начнётся.

Я так понимаю GitHub Pages в качестве CDN тоже лучше не использовать?

Не знаю, но gist.github.com в Китае почему-то заблокирован

Потому что у них есть свой Александр Жаров.
И таки да, Github Pages и gist.github.com используют разные IP адреса.
Попробуйте проверить Github Pages на следующем IP 151.101.12.133 (один из адресов Github Pages).
Но у меня же нет клиентов в Китае

Кто катался в Крым, мог почувствовать себя в Китае — оттуда часть гугловских ресурсов недоступна. Потому, на некоторых сайтах проблемы. Например недоступно то, что работает на Google App Engine
VPN как решение проблемы

Бесплатный VPN в Opera пока сейчас работает быстро.

Не знал про Крым — отличный аргумент, кстати.


VPN сам по себе может быть и быстрым и медленным, зависит от того, как быстро вы до него доходите. Так как сервера VPN вне Китая, а межд. интернет бывает очень медленным временами, то это и создает основные проблемы.

Вот так это выглядит в самом тяжелом случае
image

Хоть статья и капитанская, но спасибо! Я теперь задумался о смене Google CDN на что-то другое.


Ну просто...

… просто у нас крупнейший портал в Сахалинской области, и много "наших" людей ездят в Китай в отпуск или по работе, и при этом продолжают заходит на наш ресурс.
А начали использовать тот же jQuery с Google CDN по одной просто причине — мы живём на острове, и с интернетами у нас полная беда, и для того, чтобы хоть как-то сэкономить ресурсы нашего канала "на внешку" (за пределы Сахалина) и для ускорения загрузки страниц у клиентов, мы для этой самой "внешки" отдаём ресурсы с различных CDN (Google, Yandex, CloudFront).

Можно использовать Amazon Web Services (AWS), Microsoft Azure или Digital Ocean в качестве CDN или же хостинга для всего ресурса.
А у меня на работе сервисы гугла не работают. Не знаю какой «одарённый» админ это сделал. Так что зайти через OAuth2 никак не получается на сайты.
Политика безопасности в некоторых организациях сильно «доставляет» ;)
У нас почему-то на работе не работает market.yandex.ru, какой из сотен фильтров его блокирует нашему админу не понятно. Тот же youtube не открывается, а если кликнуть ссылку на youtube в поисковой выдаче гугла youtube открывается :) в общем че-то мне не нравится этот kerio winroute firewall
Sign up to leave a comment.

Articles