C# .NET4 простая клиент серверная архитектура

Александр16 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
03.03.2014

Необходимо разработать заготовку системы клиент-серверного взаимодействия, устроенную следующим образом. Потоки клиента (которых может быть от 1 до N) осуществляют запросы к серверу. Важный момент – поток, отправив запрос, не может продолжать свою работу, поскольку ему необходимы данные, которые должен вернуть сервер. Таким образом, поток должен как либо в синхронном режиме ждать ответа сервера.

Сервер принимает запросы клиента и ставит их в свою внутреннюю очередь на выполнение. Рабочие потоки сервера ( их не обязательно столько, сколько потоков клиента) берут задачи из очереди, выполняют их, после чего результат выполнения возвращается клиенту.

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

Подчеркнём, что необходима реализация данной архитектуры на C# .NET4. Код должен быть хорошо прокомментирован и максимально прост в реализации. Сама система может использоваться с большим количеством потоков и в течении длительного времени (нескольких месяцев). Поэтому система должна быть оптимизирована на предмет отсутствия утечек памяти.

Срок реализации 3 дня, обязательна возможность голосовой связи по скайпу.