Изменения документа Синхронное и асинхронное взаимодействие
Редактировал(а) 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:47
на 2024/06/12 15:47
Изменить комментарий:
К данной версии нет комментариев
Комментарий
-
Свойства страницы (2 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Название
-
... ... @@ -1,1 +1,1 @@ 1 - КонвейериЗапрос-Ответ1 +Синхронное и асинхронное взаимодействие - Содержимое
-
... ... @@ -1,23 +1,27 @@ 1 -|(% style="width:267px" %)Запрос-Ответ. 2 -Также синхронное взаимодействие.|(% style="width:1228px" %)Клиент посылает запрос на сервер. 3 -Сервер выполняет некоторые действия. 4 -Сервер возвращает ответ. 5 -Обычно предполагается, что промежуток времени между началом и окончанием выполнения запроса не велик и превышение некоторого промежутка времени рассматривается как ошибка (timeout). 6 -|(% style="width:267px" %)Двухсторонний конвейер. 7 -Также асинхронное взаимодействие.|(% style="width:1228px" %)((( 8 -(% style="width:469px" %) 1 +|(% style="width:121px" %)Синхронное взаимодействие|(% style="width:1364px" %)((( 2 +|(% style="width:127px" %)Запрос - ответ|(% style="width:1209px" %)((( 3 +1. Клиент посылает запрос на сервер. 4 +1. Сервер выполняет некоторые действия. 5 +1. Сервер возвращает ответ. 6 +Обычно предполагается, что промежуток времени между началом и окончанием выполнения запроса не велик и превышение некоторого промежутка времени рассматривается как ошибка (timeout). 7 +))) 8 +|(% style="width:127px" %) |(% style="width:1209px" %) 9 +))) 10 +|(% style="width:121px" %)Асинхронное взаимодействие|(% style="width:1364px" %)((( 11 +|(% style="width:132px" %)Запрос - ответ|(% style="width:1205px" %)((( 9 9 |(% style="width:128px" %) |(% style="width:338px" %)((( 10 -1. потокзаявок11 -1. потокответов13 +1. очередь команд 14 +1. очередь ответов 12 12 ))) 13 13 |(% style="width:128px" %)Клиент|(% style="width:338px" %)((( 14 -* Пишет в потокзаявок15 -* Читает потокответов17 +* Пишет в очередь команд 18 +* Читает очередь ответов 16 16 ))) 17 17 |(% style="width:128px" %)Сервер|(% style="width:338px" %)((( 18 -* Читает потокзаявок19 -* Пишет в потокответов21 +* Читает очередь команд 22 +* Пишет в очередь ответов 20 20 ))) 24 +| | 21 21 22 22 1. Клиент кладет заявку в поток заявок. 23 23 1. Сервер забирает заявку из потока заявок. ... ... @@ -25,10 +25,14 @@ 25 25 1. Сервер кладет результат обработки в поток ответов. 26 26 1. Клиент забирает результаты из потока ответов. 27 27 32 + 33 +))) 34 +|(% style="width:132px" %)Оповещение (событие)|(% style="width:1205px" %)Сервис публикующий события. 35 +Сервис читающий поток событий. 36 +|(% style="width:132px" %) |(% style="width:1205px" %) 37 +|(% style="width:132px" %) |(% style="width:1205px" %)((( 28 28 В качестве промежуточного узла между клиентом и сервером может выступать [[Брокеры сообщений>>doc:Разработка.Брокеры сообщений.WebHome]]. 29 29 30 ----- 31 - 32 32 Вопросы 33 33 1) Если несколько клиентов работают через одну очередь, то способные ли они: 34 34 1.1) Получать ответы только на свои заявки, не пересекаясь с другими. ... ... @@ -36,4 +36,28 @@ 36 36 2) Вопрос скорости обработки. Успевает ли сервер обрабатывать весь поток заявок или же очередь заявок нарастает. 37 37 3) Вопрос размеров очереди сообщений. 38 38 ))) 39 -|(% style="width:267px" %) |(% style="width:1228px" %) 47 +))) 48 + 49 +---- 50 + 51 +==== Внутренние ссылки: ==== 52 + 53 +====== Дочерние страницы: ====== 54 + 55 +{{children/}} 56 + 57 +====== Обратные ссылки: ====== 58 + 59 +{{velocity}} 60 +#set ($links = $doc.getBacklinks()) 61 +#if ($links.size() > 0) 62 + #foreach ($docname in $links) 63 + #set ($rdoc = $xwiki.getDocument($docname).getTranslatedDocument()) 64 + * [[$escapetool.xml($rdoc.fullName)]] 65 + #end 66 +#else 67 + No back links for this page! 68 +#end 69 +{{/velocity}} 70 + 71 +----