о сокетах, потоках и т.д.
Стоит задача написать публичный веб-чат. Потоковый.
Решил все это делать на базе ирц. То есть транспортом сообщений будет заведовать ирц демон. Ирц потому что я неоднократно сталкивался с этим протоколом и он мне знаком.
На первый взгляд казалось все просто - коннектимся, авторизуемся, заходим на канал и дальше бесконечный цикл, который умрет только при разъединении соединения. Отвечать на пинги не сложно. Получать сообщения, обрабатывать их и явой выводить в нужный фрем тоже труда не составляет. Проблема возникла в другом - как снаружи отправить данные в этот цикл, как снаружи инициализировать выход из цикла? В общем подход не совсем удачный. Я уже не говорю про ресурсопожираемость.
Немного погуглив пришел к выводу, что от клиентсервероной прослойки не уйти. Получается что-то типа:
Web Based Client (на стороне клиента) <–> IRC Proxy (на сервере) <–> IRC daemon
ирц прослойку можно реализовать на C, коннектиться с обмениваться сообщениями с ирц демоном проблем не составит. Как реализовать потоковую двухстороннюю связь между браузером клиента и прослойкой? Может кто знает как оно реализовано на voodoochat или php-spb-ru (или как он там правильно называется) чате? Вот на эту тему хотелось бы подискутировать.
Комментариев нет
Комментариев нет.
Извините, комментирование на данный момент закрыто.