Сорри, есть небольшой риторический вопрос (пока мне до этой проблумы далеко, но в перспективе реально)<br><br>Вопрос - а чем хуже в данной ситуации будет использование jabber-а ????<br><br><div class="gmail_quote">2009/4/15 Alexander Dolgarev <span dir="ltr">&lt;<a href="mailto:a.dolgarev@gmail.com">a.dolgarev@gmail.com</a>&gt;</span><br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Это тоже будет чат, сейчас рассматриваем варианты платформы, задача -<br>
на один нод 5000 пользователей, каждый пользователь шлет запрос 1 раз<br>
в секунду, на этот запрос должен быть выдан ответ в пределах 100мс,<br>
поэтому затраты на соединение принимаются во внимание.<br>
<br>
Как вариант тоже задумался о своев fastcgi-сервере на libev (libevent<br>
слишком громоздкий, а свое писать долго).<br>
<br>
Проблему ECONNREFUSED удается решить засчет многопоточности (пару<br>
сотен потоков, ато и больше) при использовании FastCGI Developers KIT,<br>
но это требует времени CPU. Ошибка возникала из-за переполнения<br>
backlog (128 максимум), сейчас увеличил backlog, 10 потоков, работает<br>
стабильно.<br>
<br>
Но тема с keep-alive в fastcgi, темболее сервер на libev очень интересуют.<br>
<br>
<br>
2009/4/15 Konstantin Belov &lt;<a href="mailto:belov1985@gmail.com">belov1985@gmail.com</a>&gt;:<br>
<div><div></div><div class="h5">&gt; Denis F. Latypoff wrote:<br>
&gt;&gt;<br>
&gt;&gt; Hello Maxim,<br>
&gt;&gt;<br>
&gt;&gt; Wednesday, April 15, 2009, 6:35:09 PM, you wrote:<br>
&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; On Wed, Apr 15, 2009 at 12:55:53PM +0300, Alexander Dolgarev wrote<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; В спеке FastCGI указано, что соединения между веб-сервером и<br>
&gt;&gt;&gt;&gt; fastcgi-сервером могут быть постоянными, при этом nginx в<br>
&gt;&gt;&gt;&gt; FCGI_BEGIN_REQUEST не указывает флаг FCGI_KEEP_CONN, в результате чего<br>
&gt;&gt;&gt;&gt; fastcgi-сервер закрывает соединение после ответа.<br>
&gt;&gt;&gt;&gt; Существует ли возможность в nginx делать соединения с fastcgi-сервером<br>
&gt;&gt;&gt;&gt; постоянными или это впринципе не реализовано?<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; Я так понимаю, что при тысячах запросов от клиентов nginx делает<br>
&gt;&gt;&gt;&gt; тысячи попыток соединиться с fastcgi-сервером (1 запрос = 1 соединение<br>
&gt;&gt;&gt;&gt; к fastcgi), которому приходится разгребать все эти соединения, а чаще<br>
&gt;&gt;&gt;&gt; всего просто получаем ECONNREFUSED, не было бы лучше<br>
&gt;&gt;&gt;&gt; мультиплексировать все запросы по нескольким постоянным соединениям?<br>
&gt;&gt;&gt;&gt; Подскажите, как это сделать, если это сделать нельзя, то планируется<br>
&gt;&gt;&gt;&gt; ли реализация такого поведения в будущем?<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; У меня есть работающий прототип поддержки keepalive для fastcgi.  Если<br>
&gt;&gt;&gt; очень хочется потестировать - могу поделиться патчами.<br>
&gt;&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; О! Раз пошла такая пьянка, то можно мне патчик? У меня есть самописный<br>
&gt;&gt; сервер, разговаривающий по протоколу FastCGI (it uses libev). Я бы его<br>
&gt;&gt; научил keepalive&#39;у.<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;<br>
&gt; Если не секрет, то какие задачи у сервера и какие библиотеки использовали?<br>
&gt; Сейчас просто занимаюсь разработкой чат-демона (наподобие voodoo chat), но<br>
&gt; опыта<br>
&gt; мало, а примеров в сети не так много нашел.<br>
&gt;<br>
&gt;<br>
</div></div></blockquote></div><br>