API потока Twitter состоит в том, что это по сути длительный запрос, который остается открытым, данные помещаются в него по мере того, как он становится доступным.
В результате этого сервер должен быть в состояниииметь дело с множеством одновременных открытых HTTP-соединений (по одному на каждого клиента).Многие существующие серверы не справляются так хорошо, например, движки Java-сервлетов назначают по одному потоку на запрос, что может (а) стать довольно дорогим и (б) быстро достичь нормального значения max-threads и предотвратить последующие подключения.
Как вы уже догадались, модель Node.js подходит к идее потокового соединения гораздо лучше, чем, скажем, модель сервлета.И запросы, и ответы представляются как потоки в Node.js, но не занимают весь поток или процесс, а это означает, что вы можете продолжать помещать данные в поток до тех пор, пока они остаются открытыми, не связывая чрезмерные ресурсы (хотя этосубъективно).Теоретически, вы можете иметь много одновременных открытых ответов, связанных с одним процессом, и записывать каждый из них только при необходимости.
Если вы еще не просматривали его, HTTP-документы для Node.js может быть полезно.
Я бы также взглянул на клиент Twitter Technoweenie , чтобы посмотреть, как выглядит потребительский конец этого API с Node.js, В частности, функция stream () .