Как написать масштабируемый сервер на базе TCP/IP [закрыто]C#

Место общения программистов C#
Ответить
Anonymous
 Как написать масштабируемый сервер на базе TCP/IP [закрыто]

Сообщение Anonymous »

Я нахожусь на этапе разработки нового приложения-службы Windows, которое принимает TCP/IP-соединения для длительных соединений (т. е. это не HTTP, где много коротких соединений, а скорее клиент подключается и остается на связи в течение нескольких часов, дней или даже недель).
Я ищу идеи для лучшего способа проектирования сетевой архитектуры. Мне нужно будет запустить хотя бы один поток для службы. Я подумываю об использовании Asynch API (BeginRecieve и т. д.), поскольку не знаю, сколько клиентов я подключу в любой момент времени (возможно, сотни). Я определенно не хочу запускать поток для каждого соединения.
Данные в основном будут передаваться клиентам с моего сервера, но иногда от клиентов будут отправляться некоторые команды. В первую очередь это приложение для мониторинга, в котором мой сервер периодически отправляет клиентам данные о состоянии.
Как лучше всего сделать это максимально масштабируемым? Базовый рабочий процесс?
Чтобы внести ясность: я ищу решения на основе .NET (если возможно, C#, но подойдет любой язык .NET).
Мне понадобится рабочий пример решения, либо в качестве указателя на что-то, что я мог бы загрузить, либо в виде короткого встроенного примера. И он должен быть основан на .NET и Windows (допускается любой язык .NET).

Подробнее здесь: https://stackoverflow.com/questions/869 ... sed-server
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»