Исходный код вики Конвейер и Запрос-Ответ
Версия 2.4 от Alexandr Fokin на 2023/01/23 22:56
Последние авторы
author | version | line-number | content |
---|---|---|---|
1 | |(% style="width:179px" %)Запрос-Ответ|(% style="width:1316px" %)Клиент посылает запрос на сервер. | ||
2 | Сервер выполняет некоторые действия. | ||
3 | Сервер возвращает ответ. | ||
4 | Обычно предполагается, что промежуток времени между началом и окончанием выполнения запроса не велик и превышение некоторого промежутка времени рассматривается как ошибка (timeout). | ||
5 | |(% style="width:179px" %)Двухсторонний конвейер|(% style="width:1316px" %)((( | ||
6 | (% style="width:469px" %) | ||
7 | |(% style="width:128px" %) |(% style="width:338px" %)((( | ||
8 | 1. поток заявок | ||
9 | 1. поток ответов | ||
10 | ))) | ||
11 | |(% style="width:128px" %)Клиент|(% style="width:338px" %)((( | ||
12 | * Пишет в поток заявок | ||
13 | * Читает поток ответов | ||
14 | ))) | ||
15 | |(% style="width:128px" %)Сервер|(% style="width:338px" %)((( | ||
16 | * Читает поток заявок | ||
17 | * Пишет в поток ответов | ||
18 | ))) | ||
19 | |||
20 | 1. Клиент кладет заявку в поток заявок. | ||
21 | 1. Сервер забирает заявку из потока заявок. | ||
22 | 1. Сервер выполняет обработку. | ||
23 | 1. Сервер кладет результат обработки в поток ответов. | ||
24 | 1. Клиент забирает результаты из потока ответов. | ||
25 | |||
26 | |||
27 | В качестве промежуточного узла между клиентом и сервером может выступать [[Брокеры сообщений>>doc:Разработка.Брокеры сообщений.WebHome]]. | ||
28 | |||
29 | ---- | ||
30 | |||
31 | Вопросы | ||
32 | 1) Если несколько клиентов работают через один поток, то способные ли они | ||
33 | 1.1) Получать ответы только на свои заявки, не пересекаясь с другими | ||
34 | 1.2) Получать весь поток ответов и фильтровать, отбирая только свои ответы | ||
35 | 2) Вопрос скорости обработки. Успевает ли сервер обрабатывать весь поток заявок или же очередь заявок нарастает. | ||
36 | 3) Вопрос размеров очереди сообщений. | ||
37 | ))) | ||
38 | |(% style="width:179px" %) |(% style="width:1316px" %) |