Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Таймаут для функции fsockopen();
Форумы портала PHP.SU » » Работа с сетью » Таймаут для функции fsockopen();

Страниц (1): [1]
 

1. william - 21 Декабря, 2012 - 17:04:34 - перейти к сообщению
Всех с концом света! У меня такая задача - сделать мониторинг игровых серверов. На хостинге всё летает, но в него денег пока вкладывать не хочется, не вижу смысла. У самого есть свой сервер из компа под windows 2003 Enterprise Edition , я установил php на IIS 6 и вот функция fsockopen(); в случае если сервер не отвечает висит на нём до 2 секунд, серверов будет очень много и с каждого нерабочего по 2 секунды это очень много времени. Как реализовать быструю проверку на активность сервера? http://109[dot]237[dot]227[dot]178/ - здесь можете увидеть увидеть phpinfo();, а здесь http://109[dot]237[dot]227[dot]178/1.php результат следующего кода:

PHP:
скопировать код в буфер обмена
  1.  
  2. $servl = file("servers.txt");
  3. echo count($servl);
  4.  
  5. $i = 0; while ($i < count($servl)):
  6. $exp = explode(":",$servl[$i]);
  7. if ($fp = fsockopen("udp://".$exp[0],$exp[1]))
  8. {
  9. echo "IP: ".$servl[$i]." - <font color=\"green\">Работает!</font> Время ответа: <font color=\"green\">".date('H:i:s')."</font> Порядковый номер: ".$i."<br>";
  10. }
  11. else {
  12. echo "IP: ".$servl[$i]." - <font color=\"red\">Не Работает!</font> Время ответа: <font color=\"red\">".date('H:i:s')."</font> Порядковый номер: ".$i."<br>";
  13. }
  14. $i++;
  15. endwhile;
  16.  


P.S. На denwer такая же беда!
2. DlTA - 21 Декабря, 2012 - 17:08:21 - перейти к сообщению
cURL и его многопоточность, опрашиваете пачками, и обрабатываете результат
3. william - 21 Декабря, 2012 - 17:31:26 - перейти к сообщению
Спасибо!
(Добавление)
DlTA пишет:
cURL и его многопоточность, опрашиваете пачками, и обрабатываете результат


Объясни пожалуйста как? Мне же надо проверить игровой сервер, протокола UDP! Однако
4. DlTA - 21 Декабря, 2012 - 19:01:28 - перейти к сообщению
тады не знаю

 

Powered by ExBB FM 1.0 RC1