MiksIr, фреймворк phpdaemon, судя по разделу "Installation" из документации, ставится только на NIX'ы. Код по ссылке на php.net очень похож на мой, так же два основных цикла и тройка сокетных команд create/select/accept, по сути вся разница в "оформлении".
PanoptikExec похож на выход из проблемы, но не очень нравится из-за необходимости передачи дескрипторов для записи в сокет и для удаления из массива клиентов. Нужно тестить, других альтернатив, похоже, все равно пока нет.
Печально, но форк в данном случае являлся бы идеальным решением: родительский процесс крутит бесконечный цикл прослушки порта, а дочерние обращаются к удаленному серверу и ведут запись в сокет по известным дескрипторам, после чего убивают себя. На все меньше десятка строчек кода.
|