Все браузеры, основанные на Chromium (Chrome, Edge, Opera, Vivaldi, Brave), а также программы на CEF (Electron) не работают с PAC-файлами больше 1 МБ.
И ладно бы если просто не работали, но если файл по PAC-ссылке больше 1 МБ, они воспринимают это как временную проблему и не кешируют ответ, постоянно отправляя всё новые и новые запросы на скачивание файла, устраивая DDoS.
PAC-файл АнтиЗапрета >1МБ, вероятно, привёл к блокировке российских IP-адресов на IPFS-гейтвее pinata, а после переключения — к огромному количеству запросов на IPFS-гейтвей ipfs.io, что они были вынуждены сделать rate limit на 5 запросов в час с одного адреса — запросы PAC-файла просто съедали всю их пропускную способность.
I’m looking at our bandwidth utilization and /ipfs/CID/proxy-ssl.js
and /ipfs/CID/proxy-nossl.js
are in TOP 3 of requested paths.
ok, seems that the fix was you ensuring size below 1MiB - it significantly cut down (1) bandwidth
it spiked again when I disabled rate-limits (2) and then got back down again (3) once I re-enabled them.
rate-limiting does not seem to have the same runaway effect as 1MiB thing – I think modern browsers/windows do support Retry-After, or have some sort of smart backoff when != 200 or 429 is returned.
PAC-файлы больше 1 МБ поддерживаются только в расширениях.
Чем меньше доменов в файле, тем быстрее он обрабатывается. Каждый запрос проиходит через PAC-функцию, поэтому чем быстрее она работает, тем меньше замедляются сетевые функции браузера.
В Реестре куча мусорных доменов/зеркал, которые технически работают, но никому не нужны.