#bass
Очередное причёсывания зеркал
В 087600cd166642c95809f63d4de0342d705d1c6 писал про то, что напрописывал
всяких приоритетов и местоположений для URL-ов в BASS distfiles. Писал,
что первыми идут CDN по приоритету. Передумал. Ведь получается, что у
всех весь трафик будет идти исключительно с CDN-ов, тогда как просто
зеркала не особо будут затрагиваться. С них уйдёт трафик. Владельцы
будут видеть простой. Будут думать об их бесполезности. Будут закрывать
за ненадобностью. В итоге мы придём к тому, что останутся только CDN. А
это одна точка отказа, очень чувствительная ко всякой геополитике и
просто вообще предпринимательству.
Поэтому приоритетность такая:
* балансировщики, которые HTTP/DNS перенаправлением уже на нужный сервер
пошлют. Можно считать, что это аналогично списку зеркал в .meta4
файле, но в теории балансировщики же могут и доступность файлов
проверить и загруженность серверов. Быть более интеллектуальными
* зеркала. Чтобы с них трафик не уходил, поддерживалась живая
экосистема, а не дышащее на ладан CDN-only решение
* CDN-ы
* основной сайт, master
* GitHub. Идёт в конце, чтобы, опять же, не концентрировать на нём весь
трафик. Плюс эти уроды до сих пор не поддерживают IPv6. И в целом со
скоростями до них всё плачевно
Разделение HTTP и HTTPS сохраняется. HTTP идёт первым: время
затрачиваемое на TLS рукопожатие -- визуально хорошо заметно. Смысла в
HTTPS для distfiles нет.
ISO по country code-ам не запрещает использовать XA->XZ диапазон (плюс
ещё есть) для собственных нужд. Так почему бы не воспользоваться этим? В
этом диапазоне указал некоторые CDN: xa -> Akamai; xc -> Cloudflare;
xf -> Fastly; xg -> GitHub; xl -> Leaseweb; xp -> PlanetUnix; xs -> CDN77.
А в meta4ra-url-sort утилиту -- возможность сортировки в обратном
направлении, для уменьшения приоритета, добавляя "!" в команды. Теперь
моя строчка сортировки URL-ов такая:
meta4ra-url-sort [-6] ru "dk fi nl se" '!ua' '!xf' '!xc' "" c:eu c:na rand
С -6 надо ещё разобраться, ибо есть distfiles которые есть только на
GitHub. Надо это в shell какой-нибудь обернуть, чтобы при вообще
отсутствии IPv6 варианта (не считая fallback до distcache.FreeBSD.org)
добавлять legacy IP выбор.
РФ первая. Далее Дания, Нидерланды, Швеция и Финляндия одним
приоритетом, так как с ними, как правило, уж очень хорошие задержки и
скорости, насколько мне запомнилось (или нагрузка на сервера меньше чем
в Германии или Франции?). Украину, по понятным причинам (связанность с
их сетями отвратная), в наименьший приоритет. Fastly CDN наименее
предпочтителен. Cloudflare туда же. Если есть варианты без указания
местоположения, то наверх их -- но в моих distfiles они и так в группах
приоритетов идут первыми. Далее предпочесть в целом Европейские
варианты, потом североамериканские.
Посмотрел как вообще работают с зеркалами в других дистрибутивах и ОС.
Всё очень плохо: кроме Gentoo из GNU/Linux-ов не вспомню кто использовал
бы хотя бы несколько ссылок для скачивания софта. Да и в Gentoo, по
сравнению с FreeBSD, начальный уровень какой-то. Много кто ходит по
ссылкам типа ftp.gnu.org, полностью минуя их систему балансировки и
зеркалирования. По моему, это очень плохо и не уважительно, особенно
когда проект просит их использовать. gnupg.org просит использовать
зеркала по возможности.
[оставить комментарий]