[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Демон на Php
Nikitian
Появилась задача реализации демона на пхп, который бы гонял данные между клиентами. Клиенты flash. Сперва планировал реализовать comet-сервер, но flash при частом открытии соединений (а надо 2-3 раза в секунду) вешает браузер. Задумали открыть постоянное соединение и гонять в его рамках данные. Только вот засада: никогда не писал демонов на пыхе и что-то я зыпутался как это реализовать (:
Нарыл примерный код, но только он несколько для другой задачи, хотя и близко. Может кто даст толковый мануал на подобную реализацию?

Пы.Сы. Да, да, именно на пыхе (:



Спустя 1 час, 4 минуты, 25 секунд (23.11.2010 - 15:37) linker написал(а):
Удивило наличие set_time_limit(5); может надо set_time_limit(0); чтобы скрипт действительно вечно выполнялся? А тут все просто. Создаешь сокет, биндишь порт и в бесконечном цикле слушаешь открытый порт. Как-только происходит соединение, то сразу форкаешься, проверяешь пид процесса, если он не равен родительскому, то значит скрипт - есть его форк, т.е. дочерний процесс, в котором собственно и производится обмен данными с подключенным клиентом.

Спустя 20 минут, 38 секунд (23.11.2010 - 15:58) Nikitian написал(а):
set_time_limit(5) поставил на время тестирования. Было set_time_limit(0).
Спасибо за объяснение, только вот с форками никогда не работал, потому и впал в ступор. Может есть толковая документация с примерами? На php.net читал про форки, но теории не хватает, чтобы понять как они работают (

Спустя 3 минуты, 4 секунды (23.11.2010 - 16:01) linker написал(а):
Набери в гугле сервер на php думаю результат тебя удовлетворит.

Спустя 10 часов, 34 минуты, 32 секунды (24.11.2010 - 02:36) kirik написал(а):
Nikitian
Для флэша лучше использовать rtmp сервер (red5 или rtmpd из бесплатных). Как раз сейчас над сервисом вебкамов работаю smile.gif
Кстати если нужно чат, то проще замутить на аяксе с comet сервером от Котерова (Dklab Realplexor).

ЗЫ.
была задумка реализовать rtmp сервер на php, но пока времени нет.

Спустя 10 минут, 19 секунд (24.11.2010 - 02:46) Nikitian написал(а):
Цитата (kirik @ 23.11.2010 - 23:36)
Nikitian
Для флэша лучше использовать rtmp сервер (red5 или rtmpd из бесплатных). Как раз сейчас над сервисом вебкамов работаю smile.gif

Почитаю, спасибо.
Цитата (kirik @ 23.11.2010 - 23:36)

Кстати если нужно чат, то проще замутить на аяксе с comet сервером от Котерова (Dklab Realplexor).

Я же писал, что realplexor не подошёл ввиду того, что это не чат, это больше проксик для двух клиентов. Причём из-за динамики comet как раз и не подошёл. С ним-то всё просто и проксик в 10 строчек укладывался, но.. увы и ах.

Спустя 18 минут, 5 секунд (24.11.2010 - 03:04) kirik написал(а):
Цитата (Nikitian @ 23.11.2010 - 18:46)
Почитаю, спасибо.

Только они не на php конечно smile.gif

Спустя 9 часов, 8 минут (24.11.2010 - 12:12) sharki написал(а):
Nikitian
А чем полезен данный демон? Т.е чтобы был постоянный туннель между допустим двумя пользователями, и без задержек отклика, передавать данные?

Спустя 1 час, 10 минут, 46 секунд (24.11.2010 - 13:23) Nikitian написал(а):
sharki
Именно для этого
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.