Я заметил странную задержку при попытке получить сайты; поведение кажется чрезвычайно отличительным, и мне легко воспроизвести его, поэтому я довольно уверен в большинстве деталей ниже. Я надеюсь, что кто-то узнает это или сможет решить это.
Кажется, что длительность задержки увеличивается с увеличением времени после перезагрузки компьютера, насколько я могу судить без ограничений. Это менее тщательно проверено, чем другие пункты, но я уверен, что перезапуск решает проблему и что он редко появляется в течение первых нескольких часов после перезапуска (и кажется управляемым гораздо дольше).
Задержка появляется в любом из Firefox, Safari или Chrome.
curl нормально работает нормально. Но пока какая-либо из Chrome, Safari или Firefox загружает страницу, curl будет испытывать большие задержки. Закрытие браузера немедленно приведет к успешному завершению всех запущенных заданий скручивания (например, я могу запустить 5 экземпляров скручивания, извлекающих разные веб-сайты, причем все они останавливаются на индикаторе прогресса, не показывая прогресса; закрытие Chrome вызовет все рабочие места, чтобы немедленно закончить).
Задержка для curl существенно меньше, чем для веб-сайтов, даже если она существует. Прямо сейчас это составляет порядка 15 секунд, потому что я не перезагружался некоторое время в надежде отладить его. Веб-сайт займет намного больше времени, чем это, возможно, 15 секунд, в то время как "ожидание www.---.com" сопровождается сопоставимым отрезком времени, ожидая других.
Задержки (как сообщает ping) не увеличиваются во время проблем.
В то время как скручивание вызывает задержки, разные задания скручивания завершаются одновременно. То есть все они будут висеть в течение длительного времени, затем все перестанут висеть в один и тот же момент (и, следовательно, закончатся примерно в одно и то же время, в масштабе 15+ секунд, за которые они висят). Иногда это происходит в браузерах, но ненадежно (что, я думаю, может быть связано с тем, что браузер имеет несколько возможностей зависания до фактической загрузки страницы). После того, как задания скручивания завершаются, их немедленный перезапуск приводит к тому, что они зависают точно так же, поэтому проблема не в том, что проблема прояснилась (по крайней мере, не очень долго).
Задержка довольно различна для разных веб-страниц. Я не сделал очень подробный опрос (это будет следующий шаг, я думаю).
когда он зависает, curl -v висит на индикаторе выполнения без данных.
При загрузке страниц в Chrome большую часть времени тратится на «ожидание» CDN и сторонних сервисов.
Часто Chrome отображает пустой экран, а нажатие кнопки «Стоп» приводит к отображению страницы (с большинством, но не со всеми загруженными активами). Я предполагаю, что это связано с последним моментом, и это просто поведение хрома, которое появляется, когда мы имеем такую длительную задержку, а не тесно связано с проблемой.
Задержка появляется при подключении ко многим различным беспроводным сетям с разными характеристиками производительности (например, линия 50 Мбит / с). Я не пробовал проводные сети, хотя полагаю, что это не имеет значения.
Точно так же другой DNS не имеет значения (что неудивительно, учитывая, что пинг всегда в порядке).
Я наблюдаю то же поведение при очень разных уровнях нагрузки на систему. Например, сейчас у меня 3/8 ГБ свободной памяти.