Редактировал(а) Alexandr Fokin 2024/06/12 15:47

От версии 1.1 >
отредактировано Alexandr Fokin
на 2020/02/13 12:25
К версии < 2.8 >
отредактировано Alexandr Fokin
на 2024/06/12 15:40
>
Изменить комментарий: Update document after refactoring.

Комментарий

Подробности

Свойства страницы
Название
... ... @@ -1,1 +1,1 @@
1 -Конвеер
1 +Синхронное и асинхронное взаимодействие
Родительский документ
... ... @@ -1,1 +1,1 @@
1 -Архитектура и модели.WebHome
1 +Архитектура и модели.Модели.WebHome
Содержимое
... ... @@ -1,0 +1,56 @@
1 +|(% style="width:267px" %)Запрос-Ответ.
2 +Также синхронное взаимодействие.|(% style="width:1228px" %)
3 +|(% style="width:267px" %)Двухсторонний конвейер.
4 +Также асинхронное взаимодействие.|(% style="width:1228px" %)(((
5 +
6 +
7 +Вопросы
8 +1) Если несколько клиентов работают через одну очередь, то способные ли они:
9 +1.1) Получать ответы только на свои заявки, не пересекаясь с другими.
10 +1.2) Получать весь поток ответов и фильтровать его, отбирая только свои ответы.
11 +2) Вопрос скорости обработки. Успевает ли сервер обрабатывать весь поток заявок или же очередь заявок нарастает.
12 +3) Вопрос размеров очереди сообщений.
13 +)))
14 +|(% style="width:267px" %) |(% style="width:1228px" %)
15 +
16 +|(% style="width:269px" %)Синхронное взаимодействие|(% style="width:1216px" %)(((
17 +|(% style="width:125px" %)Запрос - ответ|(% style="width:1073px" %)(((
18 +1. Клиент посылает запрос на сервер.
19 +1. Сервер выполняет некоторые действия.
20 +1. Сервер возвращает ответ.
21 +Обычно предполагается, что промежуток времени между началом и окончанием выполнения запроса не велик и превышение некоторого промежутка времени рассматривается как ошибка (timeout).
22 +)))
23 +|(% style="width:125px" %) |(% style="width:1073px" %)
24 +)))
25 +|(% style="width:269px" %)Асинхронное взаимодействие|(% style="width:1216px" %)(((
26 +|(% style="width:130px" %)Запрос - ответ|(% style="width:1068px" %)(((
27 +|(% style="width:128px" %) |(% style="width:338px" %)(((
28 +1. очередь команд
29 +1. очередь ответов
30 +)))
31 +|(% style="width:128px" %)Клиент|(% style="width:338px" %)(((
32 +* Пишет в очередь команд
33 +* Читает очередь ответов
34 +)))
35 +|(% style="width:128px" %)Сервер|(% style="width:338px" %)(((
36 +* Читает очередь команд
37 +* Пишет в очередь ответов
38 +)))
39 +| |
40 +
41 +1. Клиент кладет заявку в поток заявок.
42 +1. Сервер забирает заявку из потока заявок.
43 +1. Сервер выполняет обработку.
44 +1. Сервер кладет результат обработки в поток ответов.
45 +1. Клиент забирает результаты из потока ответов.
46 +
47 +В качестве промежуточного узла между клиентом и сервером может выступать [[Брокеры сообщений>>doc:Разработка.Брокеры сообщений.WebHome]].
48 +)))
49 +|(% style="width:130px" %)Оповещение (событие)|(% style="width:1068px" %)Сервис публикующий события.
50 +Сервис читающий поток событий.
51 +|(% style="width:130px" %) |(% style="width:1068px" %)
52 +
53 +
54 +)))
55 +
56 +