php и сокеты

Разработка своих веб-приложений и страничек

php и сокеты

Сообщение Rostov114 » 10 июн 2009, 10:05

Имеется скрипт который читает сокет через fread.
Все хорошо но fread засыпает даже при чтении 1 байта на 6 секунд...кто нибудь знает как сию проблему вылечить?
Некоммерческий проект «HSDN»
Аватара пользователя
Rostov114
Автор
 
Сообщения: 3198
Зарегистрирован: 18 окт 2007, 02:21

Re: php и сокеты

Сообщение ibe » 11 июн 2009, 22:24

Здесь думаю тебе никто не ответить.
Лучше пиши тут :wink:
Изображение
Аватара пользователя
ibe
Активный участник
 
Сообщения: 893
Зарегистрирован: 31 мар 2009, 00:46

Re: php и сокеты

Сообщение Rostov114 » 11 июн 2009, 22:33

ibe писал(а):Здесь думаю тебе никто не ответить.
Лучше пиши тут :wink:

Ну уж лучше тогда на ачате...
P.S. Я думал ФОС умнее...
P.S.S. Прискорбно...
Некоммерческий проект «HSDN»
Аватара пользователя
Rostov114
Автор
 
Сообщения: 3198
Зарегистрирован: 18 окт 2007, 02:21

Re: php и сокеты

Сообщение DPX-Infinity » 12 июн 2009, 09:59

откуда пытаешься читать данные? если с удалённого сервера - это вполне нормально. у меня и дольше читалось в питоне, пока не выставил таймаут. попробуй поменять таймаут ожидания на 1-3 секунды, и если работать не будет - это что-то с коннектом.
Изображение
Переходите на Jabber! За ним будущее!
Желаю вам опенсорса!
Аватара пользователя
DPX-Infinity
Активный участник
 
Сообщения: 723
Зарегистрирован: 02 сен 2007, 20:45
Откуда: Саратов

Re: php и сокеты

Сообщение Rostov114 » 12 июн 2009, 10:31

DPX-Infinity писал(а):откуда пытаешься читать данные? если с удалённого сервера - это вполне нормально. у меня и дольше читалось в питоне, пока не выставил таймаут. попробуй поменять таймаут ожидания на 1-3 секунды, и если работать не будет - это что-то с коннектом.

:) Да удаленный сервер.
Таймаут выставлен функцией stream_set_timeout() на 0.1 секунды...
Некоммерческий проект «HSDN»
Аватара пользователя
Rostov114
Автор
 
Сообщения: 3198
Зарегистрирован: 18 окт 2007, 02:21

Re: php и сокеты

Сообщение DPX-Infinity » 12 июн 2009, 20:21

и всё равно 6 секунд? о_О именно на fread? очень странно.
попробуй сделать это функциями сокетов - http://php.hsdn.org/manual/ru/function. ... create.php и т.п.
если всё будет так же - очень похоже на глюк в пхп.
кстати можешь попробовать чтонить наваять на другом скриптовом языке для сравнения - питон, перл (хаскелл м.б. :) ). я так обычно делаю если какие-то похожие глюки встречаются.
кстати размер читаемых данных (в разумных пределах, конечно) на скорость обычно не влияет - на будущее :)
Изображение
Переходите на Jabber! За ним будущее!
Желаю вам опенсорса!
Аватара пользователя
DPX-Infinity
Активный участник
 
Сообщения: 723
Зарегистрирован: 02 сен 2007, 20:45
Откуда: Саратов

Re: php и сокеты

Сообщение Rostov114 » 13 июн 2009, 12:17

:) Извеняюсь за кипиш..оказался баг в самом классе...
Было
Код: Выделить всёРазвернуть
stream_set_timeout($this->socet$this->timeout_second$this->timeout_msecond); 

После замены на
Код: Выделить всёРазвернуть
stream_set_timeout($this->socet1); 

Все прекрасно заработало...
P.S. Класс WebICQPro
Некоммерческий проект «HSDN»
Аватара пользователя
Rostov114
Автор
 
Сообщения: 3198
Зарегистрирован: 18 окт 2007, 02:21


Вернуться в PHP, HTML, CSS...

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8