Форум → Программирование → PHP для идиотов → Deamon Client + Server на PHP !!!!
Deamon Client + Server на PHP !!!!
Страницы: ← Следующая страница →
-
В инете видел много примеров либо клиента как процесс либо сервера как процесс… А мне необходимо, чтоб
процесс был и клиентом и сервером…
Ребята подскажите как пишется такой демон на PHP ?
Или кто может покажите примерный код или алгоритм, как в бесконечном цикле сделать Client + Server (Хотя бы для одного клиента)…
Зараннее ОГРОМНОЕ СПАСИБО!!! -
-
27 апреля 2008 г. 21:44, спустя 45 минут 19 секунд
qazaqq, почему именно на php решил писать демона? Для того чтоб он работал, скрипты придется висеть в памяти неограниченное кол-во времени, по умолчанию время работы скрипта составляет 30 секунд. Хостер может не позволить тебе изменить это значение, может стоит посмотреть в сторону других языков программирования для решения это задачи, к примеру Java. -
27 апреля 2008 г. 22:14, спустя 29 минут 41 секунду
чисто из интереса, поясни плиз, как должна стоять задача, чтоб один процесс был и клиентом, и сервером? -
27 апреля 2008 г. 23:49, спустя 1 час 35 минут 37 секунд
ghost, Нужен ДЕМОН(процесс), который работает как прокси, с одной стороны соединен с сервером(192.168.0.1 порт 40000) как клиент, а с другой стороны как сервер (127.0.0.1 порт 20000) для клиента…
То есть этот процесс принимает данные с сервера, упорядочивает, сортирует и уже потом передает понятную инфу клиенту и наоборот принимает от клиента и передает на сервер…!!!!
Вот более простой вариант интерпретации вопроса:
1) У меня есть два демона, именно 2 ДЕМОНА, а не скрипта!!!
2) Один из них сервер, а второй - клиент
———————————————————————————
Это замечательно, они корректно работают по отдельности…!
———————————————————————————
3) Мне нужно их объеденить в один демон(процесс)
4) Как это можно сделать…???? -
27 апреля 2008 г. 23:53, спустя 3 минуты 19 секунд
disc,
1) На PHP есть такая замечательная штука как set_time_limit(0);
2) Сервер собственно мой, он не в глобальной сети
3) На PHP как то проще работать, много функций, да и знаю его лучше…
4) Пробовал и хотел написать на си, но понял, что не обладаю я этим языком… -
28 апреля 2008 г. 0:30, спустя 37 минут 41 секунду
qazaqq,
1) спасибо что открыл мне глаза на функцию set_time_limit() :)
2)На PHP как то проще работать, много функций, да и знаю его лучше…
и4) Как это можно сделать…????
:) неувязочка :)
3) Советую все таки ковырять более заточеный под это язык -
28 апреля 2008 г. 0:31, спустя 45 секунд
все равно не понимаю - в чем состоит неудобство при использовании именно двух демонов? -
28 апреля 2008 г. 1:33, спустя 1 час 1 минуту 30 секунд
да, кстати, http://www.phpinside.ru/?q=node/668 - ознакомься :) -
30 апреля 2008 г. 12:34, спустя 2 дня 11 часов 1 минуту
Решил поподробнее написать, что нужно, даже нарисовал…
кому интересно, можно поглядеть тут:
http://drop.io/laccr8b -
30 апреля 2008 г. 12:45, спустя 11 минут 6 секунд
так, а теперь, почему именно php?все умрут, а я изумруд -
30 апреля 2008 г. 17:25, спустя 4 часа 40 минут 1 секунду
md5,
Любится, нравится, больше понимается….
Неохота изучать методы другого языка, код хочется скрыть…
А какие есть предложения в качестве языка??? -
30 апреля 2008 г. 17:43, спустя 18 минут
ну если не овладеешь другими языками, си, ява к примеру, то пиши на пхп, раз уж сервер свой и т.д.
но раз уж ты на пхп не знаешь, как это делается, то какая разница, в каком языке разбираться? может лучше посмотреть си?
сам я не писал, но мой товарищ сисист только этим и занимается )все умрут, а я изумруд -
2 июня 2008 г. 0:32, спустя 32 дня 6 часов 48 минут
ghost, псасибо за ссылку
qazaqq, небольшая неувязочка
предпологаем что у нас
ini_set('max_execution_time', 0);
while(true){
// some logic here
}
Первое что могу сказать что эта штука работает так:
1 ты конектишся
2 ставишь время выполнения без ограничений
3 заходишь в цыкл
4 читаешь из 192.168.0.1:40000
5 пишешь в 127.0.0.1:20000
6 ты закрываешь браузер
7 соединение разрываеться (процесс не висит)
вариант один у тебя браузер, но ты ничего не видешь пока сервер не отдаст весь контент
этого естественно не произойдет потому что у тебя поток
проверить можно тут http://mabp.kiev.ua/content/polygon/comet_clock.php?sid=12345
посмотреть код можно на http://mabp.kiev.ua/content/2008/04/26/simple_comet/
ты прерываешь обращение браузера и в лучшем случаи видишь то что ты успел закачать
в худшем ничего не видешь
плюс у тебя не работает яваскрипт
вариант 2 ты читаешь из потока какойто программой
начерта тебе тогда демон пробрось прогу через роут
ЗЫ если я не прав жду каментов -
5 июня 2008 г. 12:38, спустя 3 дня 12 часов 5 минут
7 соединение разрываеться (процесс не висит)
ignore_user_abort
вариант один у тебя браузер, но ты ничего не видешь пока сервер не отдаст весь контент
этого естественно не произойдет потому что у тебя поток
flush
вариант 2 ты читаешь из потока какойто программой
начерта тебе тогда демон пробрось прогу через роут
+1
ЗЫ если я не прав жду каментов :)
Страницы: ← Следующая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!