Re[4]: HTTP Streaming. Возможно?

Pavel V. pavel2000 at ngs.ru
Fri Feb 8 14:28:30 MSK 2008


Здравствуйте, public-mail.

Вы писали 8 февраля 2008 г., 12:30:50:

>> Если вы пишете что-то свое, то можно попробовать сделать из этого
>> HTTP-Daemon ... Не подойдет ли такой вариант?
> Нужна она именно в таком варианте по одной простой причине: малое (по
> сравнению с mod_apache даже с worker) потребление ОЗУ.

> Насчет демона мысли были, только преимущества его я не вижу. Точнее даже
> так, я считаю что пока не смогу реализовать нормальный варинат демона.
> Ведь при отсутствии веб сервера логику работы по HTTP протоколу придется
> реализовывать самому. А зачем писать то, что уже кем то реализованно? Хотя
> конечно может уже есть готовые библиотеки, но я таковых пока не встречал.

> Еще какой варинат возникал это  Jabber сервер как демон. Поскольку ответы
> от него идут в виде XML, то можно будет использовать AJAX.
> Преимущества/недостатки это вариата еще не проверял.

> В любом случае у меня сомнению по поводу демона. С демоном клиент сделал
> запрос, получил ответ, соединение закрылось. В варианте того же чата
> придется пинать сервер через короткие промежутки времени, открывать
> соеденине по новой, а новых данных может и нет. Поэтому, имхо, лучше
> держать соединение открытым минуту или две, а новые данные досылать по
> мере поступления. Ведь на сколько я знаю открыть один коннект в течении
> минуты по накладным расходам выгоднее, чем отрыть/закрыть 60 таких
> конектов.

  Как раз таки демон и позволяет держать пуш-соединения, и не
  переоткрывать их ни раз в секунду, ни раз в минуту.  ПОзволяет
  держать их долго, десятки минут.

Допустим что все-таки есть поддержка HTTP-Streaming via FastCGI. Тогда
у вас для каждого, допустим, клиента чата нужно держать по
персональному рабочему процессу, плюс налаживать коммуникации между этими
процессами.

 Для реализации на нескольких сайтах сервиса чата я использовал
 однопоточный даймон с неблокирующимися сокетами, написанный на перл.
 Большую нагрузку оно конечно не потянет, да и сделано (у меня) "не
 очень". Как тот же самый чат сделать в другом варианте (в пределах
 того же языка) с использованием FastCGI/mod_perl, множества процессов
 - я не представляю, мне кажется что это значительно сложнее.

 Для реализации чата с использованием nginx я где-то видел  модуль
 mod_voc для nginx.
 Пример смотреть в районе  http://forum.vochat.com/viewtopic.php?t=4288&highlight=nginx
 Чего оно там делает - не знаю, но оно есть, смотрите :)
 

-- 
С уважением,
 Pavel                          mailto:pavel2000 at ngs.ru






More information about the nginx-ru mailing list