Re[2]: Пул потоков
От: al71  
Дата: 11.11.05 23:32
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>Здравствуйте, Аноним, Вы писали:


А>>ТАкая ситуация. Клиент логинится на сервер и просит его выслать ему информацию. На каждый запрос создается поток. Соединение довольно скоротечное и сокеты блокирующие. Сейчас код выглядит так.


CS>Дурная мысль: а зачем там потоки вообще?


CS>Дело в том что сокеты сами по себе очереди (входящие) и если у тебя

CS>отдаваемая информация под рукой проще отдать её сразу.

CS>Очень большая вероятность что такое решение будет работаь быстрее

CS>чем на потоках. UDP еще для такого типа трафика весьма полезно.

Полностью согласен с c-smile — в большинстве случаев потоки действительно не нужны. Но если уж совсем критично (скорость, надежность), то смотреть лучше не в сторону потоков и даже их пула (хотя всегда есть варианты) — а в сторону организации еще одной очереди, куда вы будете отправлять принятые вами сообщения — очереди на обработку сообщений (ка вариант см. MessageQueue, Service Broker на Yukon, AQ Oracle и даже Names Pipe) — просто на другой стороне очереди (возможно даже на другом железе) организуете нужное вам количество слушающих эту очередь потоков и все.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.