Исходный код вики Конвеер и Запрос-Ответ
Версия 2.2 от Alexandr Fokin на 2023/01/23 22:51
Последние авторы
author | version | line-number | content |
---|---|---|---|
1 | |||
2 | Модель Запрос-Ответ | ||
3 | Клиент посылает запрос на сервер. | ||
4 | Сервер выполняет некоторые действия. | ||
5 | Сервер возвращает ответ. | ||
6 | Обычно предполагается, что промежуток времени между наалом и окнчанием выполнения запроса не велик и превышение некоторого промежутка времени рассматривается как ошибка (timeout). | ||
7 | |||
8 | |||
9 | Модель Двухсторонний конвеер | ||
10 | 1) поток заявок | ||
11 | 2) поток ответов | ||
12 | |||
13 | Клиент | ||
14 | Пишет в поток заявок | ||
15 | Читает поток ответов | ||
16 | |||
17 | Сервер | ||
18 | Читает поток заявок | ||
19 | Пишет в поток ответов | ||
20 | |||
21 | |||
22 | Клиент кладет заявку в поток заявок. | ||
23 | Сервер забирает заявку из потока заявок. | ||
24 | Сервер выполняет обработку. | ||
25 | Сервер кладет результат обработки в поток ответов. | ||
26 | Клиет забирает результаты из потока ответов. | ||
27 | |||
28 | В качестве промежуточного узла между клиентом и сервером может выступать очередь сообщений. | ||
29 | |||
30 | Вопросы | ||
31 | 1) Если несколько клиентов работают через один поток, то способные ли они | ||
32 | 1.1) Получать ответы только на свои заявки, не пересекаясь с другими | ||
33 | 1.2) Получать весь поток ответов и фильтровать, отбирая только свои ответы | ||
34 | 2) Вопрос скорости обработки. Успевает ли сервер обрабатывать весь поток заявок или же очередь заявок нарастает. | ||
35 | 3) Вопрос раззмеров очереди сообщений. |