В теории есть network namespaces и можно в дефолтной скти запретить её всем, firefox запускать в отдельном namespace. Но никакого толкового мануала по настройке такого способа я не видел :(
В этом искусственном примере без разницы. В реальности внутри функции суорее всего будут локальные переменные, которве будут доступны из функции say и недоступны снаружи
Кажетмюся в такой схеме невозможно учесть сетевые задержки. Т.е. либо верить, что они в среднем небольшие и допустимы для вашей задачи. Либо решения нет. Если, например шлюз каждый пакет будет задерживать на 10 минут, ваша система об этом никак не сможет узнать
Moskus, ваша информация может верна для старых TLD (.com и т.п.), но в новых (в том числе .dev) цены отданы на откуп организации владеющей TLD. И если гугл сказал, что renewal fee будет $1000, то ни у какого регистратора вы не заплатите меньше.
Вы понимаете, что у вас тут два запроса?
Если я правильно понял, то вы ожидаете, что первй запрос в пхп создаст файл и вторым запросом вы его скачаете. Проблема в том, что запросы уходят одновременно