Изменения документа Синхронное и асинхронное взаимодействие
Редактировал(а) Alexandr Fokin 2024/06/12 15:47
<
>
отредактировано Alexandr Fokin
на 2023/01/23 22:58
на 2023/01/23 22:58
отредактировано Alexandr Fokin
на 2024/06/12 15:40
на 2024/06/12 15:40
Изменить комментарий:
Update document after refactoring.
Комментарий
-
Свойства страницы (2 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Название
-
... ... @@ -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 +