На нашем сайте мы запускаем несколько разных скриптов для разных сайтов (загрузка на amazon s3, данные из диаграммы, скрипт для подсчета подписчиков в твиттере), и все они время от времени просто перестают работать. Они работают большую часть дней, но иногда (например, сегодня) все просто перестают работать.
Этот простой скрипт для подсчета количества подписчиков в PHP
$url = "http://twitter.com/users/show/username";
$response = file_get_contents ( $url );
$t_profile = new SimpleXMLElement ( $response );
$count = $t_profile->followers_count;
Просто сидит там пару минут, а затем, наконец, выдает ошибку с надписью «Не удалось разрешить хост». Любой скрипт, который мы используем для внешнего сайта, дает нам эту ошибку. Я не совсем уверен, где проверить, что внезапно блокирует эти соединения и почему это работает в большинстве случаев, затем не работает в течение дня или около того, а затем снова работает.
Какие-нибудь советы?
Обновление: содержимое resolv.conf
search 147.225.210.rdns.ubiquityservers.com
nameserver 72.37.224.5
nameserver 72.37.224.6
Описанные вами симптомы являются классическим случаем, когда ваши DNS-серверы не отвечают. Когда ни один из DNS-серверов недоступен, тогда имена хостов не могут быть преобразованы в IP-адреса, и вы не можете разумно подключиться к чему-либо (по крайней мере, по имени).
Похоже, что вы используете DNS-серверы, предоставленные вам центром обработки данных, в котором находится ваш сервер. Надежность таких серверов часто вызывает сомнения.
Пытаться с использованием заведомо исправных серверов, таких как Google Public DNS вместо.
nameserver 2001:4860:4860::8888
nameserver 2001:4860:4860::8844
nameserver 8.8.8.8
nameserver 8.8.4.4