Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Сервер рвёт соединение при загрузке большого количества документов по сокету
 
 автор: dima2207   (17.03.2007 в 21:17)   письмо автору
 
 

У меня проблемма такого рода - есть скрипт , который получает в цыкле при помощи сокетов 55 стрниц с удаленнога хоста . так вот проблемма состоит в том что каждый раз получается разное кол-во страниц , я так понимаю что это удаленный сервер прерывает соединение , что я только не пытался сделать и таймеоут в сокете менял , и файлегетконтент пытался использовать , все бесполезно !!! и разбивать загрузку на части тоже не имеет смысла , потому-что неизвестно когда сервер прервет соединение !!!
подскажите что в таких случаях нужно делать ??? может быть кто-то уже сталкивался п подобной проблеммой , или просто знает как ее решить !!!!

   
 
 автор: cheops   (18.03.2007 в 01:32)   письмо автору
 
   для: dima2207   (17.03.2007 в 21:17)
 

Каков порядок загрузки, вы открыв сокет загружаете при помощи него несколько файлов или под каждый новый документ открываете новый сокет (рекомендуется последнее).

   
 
 автор: dima2207   (18.03.2007 в 16:30)   письмо автору
 
   для: cheops   (18.03.2007 в 01:32)
 

Именно так все и происходит , я под каждую страницу открываю соединение ,да , и что самое интерестное , так это то что в ручном режиме все проходит нормально , грузится по отдельности столько стр. сколько нужно !!!!

   
 
 автор: cheops   (19.03.2007 в 01:18)   письмо автору
 
   для: dima2207   (18.03.2007 в 16:30)
 

Попробуйте между отдельными загрузками поставить задержку в 1 секунду
<?php
  sleep
(1);
?>

   
 
 автор: KPETuH   (19.03.2007 в 11:49)   письмо автору
 
   для: dima2207   (18.03.2007 в 16:30)
 

Если используете неблокирующие сокеты, то обязатольно как сказал cheops нужна пауза, необязательно в 1 секунду можно и меньше, все зависит от канала по которому идет соединение... У меня если я использую блокирующие сокеты то паузы вообще не надо, а вот с неблокирующими сокетами приходится делать паузу в несколько микросекнд...

   
 
 автор: mihdan   (19.03.2007 в 14:16)   письмо автору
 
   для: dima2207   (17.03.2007 в 21:17)
 


<?php
sleep
(rand(1,3));
?>

   
 
 автор: KPETuH   (19.03.2007 в 14:17)   письмо автору
 
   для: mihdan   (19.03.2007 в 14:16)
 

смысл?

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования