Конвеер и Запрос-Ответ
Модель Запрос-Ответ
Клиент посылает запрос на сервер.
Сервер выполняет некоторые действия.
Сервер возвращает ответ.
Обычно предполагается, что промежуток времени между наалом и окнчанием выполнения запроса не велик и превышение некоторого промежутка времени рассматривается как ошибка (timeout).
Модель Двухсторонний конвеер
1) поток заявок
2) поток ответов
Клиент
Пишет в поток заявок
Читает поток ответов
Сервер
Читает поток заявок
Пишет в поток ответов
Клиент кладет заявку в поток заявок.
Сервер забирает заявку из потока заявок.
Сервер выполняет обработку.
Сервер кладет результат обработки в поток ответов.
Клиет забирает результаты из потока ответов.
В качестве промежуточного узла между клиентом и сервером может выступать очередь сообщений.
Вопросы
1) Если несколько клиентов работают через один поток, то способные ли они
1.1) Получать ответы только на свои заявки, не пересекаясь с другими
1.2) Получать весь поток ответов и фильтровать, отбирая только свои ответы
2) Вопрос скорости обработки. Успевает ли сервер обрабатывать весь поток заявок или же очередь заявок нарастает.
3) Вопрос раззмеров очереди сообщений.