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

<
От версии < 2.5 >
отредактировано Alexandr Fokin
на 2023/01/23 22:58
К версии < 2.8 >
отредактировано Alexandr Fokin
на 2024/06/12 15:40
>
Изменить комментарий: Update document after refactoring.

Комментарий

Подробности

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