Изменения документа Синхронное и асинхронное взаимодействие
Редактировал(а) Alexandr Fokin 2024/06/12 15:47
<
отредактировано Alexandr Fokin
на 2023/01/23 22:51
на 2023/01/23 22:51
отредактировано Alexandr Fokin
на 2024/06/12 15:47
на 2024/06/12 15:47
Изменить комментарий:
К данной версии нет комментариев
Комментарий
-
Свойства страницы (2 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Название
-
... ... @@ -1,1 +1,1 @@ 1 - КонвеериЗапрос-Ответ1 +Синхронное и асинхронное взаимодействие - Содержимое
-
... ... @@ -1,36 +1,71 @@ 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" %)((( 12 +|(% style="width:128px" %) |(% style="width:338px" %)((( 13 +1. очередь команд 14 +1. очередь ответов 15 +))) 16 +|(% style="width:128px" %)Клиент|(% style="width:338px" %)((( 17 +* Пишет в очередь команд 18 +* Читает очередь ответов 19 +))) 20 +|(% style="width:128px" %)Сервер|(% style="width:338px" %)((( 21 +* Читает очередь команд 22 +* Пишет в очередь ответов 23 +))) 24 +| | 1 1 2 - МодельЗапрос-Ответ3 - Клиентпосылает запрос насервер.4 -Сервер выполняет некоторые действия.5 -Сервер возвращает ответ.6 - Обычнопредполагается,что промежутоквремени междунаалом и окнчанием выполнениязапросане велик ипревышение некоторого промежуткавремени рассматривается какошибка (timeout).26 +1. Клиент кладет заявку в поток заявок. 27 +1. Сервер забирает заявку из потока заявок. 28 +1. Сервер выполняет обработку. 29 +1. Сервер кладет результат обработки в поток ответов. 30 +1. Клиент забирает результаты из потока ответов. 7 7 32 + 33 +))) 34 +|(% style="width:132px" %)Оповещение (событие)|(% style="width:1205px" %)Сервис публикующий события. 35 +Сервис читающий поток событий. 36 +|(% style="width:132px" %) |(% style="width:1205px" %) 37 +|(% style="width:132px" %) |(% style="width:1205px" %)((( 38 +В качестве промежуточного узла между клиентом и сервером может выступать [[Брокеры сообщений>>doc:Разработка.Брокеры сообщений.WebHome]]. 8 8 9 -Модель Двухсторонний конвеер 10 -1) поток заявок 11 -2) поток ответов 40 +Вопросы 41 +1) Если несколько клиентов работают через одну очередь, то способные ли они: 42 +1.1) Получать ответы только на свои заявки, не пересекаясь с другими. 43 +1.2) Получать весь поток ответов и фильтровать его, отбирая только свои ответы. 44 +2) Вопрос скорости обработки. Успевает ли сервер обрабатывать весь поток заявок или же очередь заявок нарастает. 45 +3) Вопрос размеров очереди сообщений. 46 +))) 47 +))) 12 12 13 -Клиент 14 - Пишет в поток заявок 15 - Читает поток ответов 49 +---- 16 16 17 -Сервер 18 - Читает поток заявок 19 - Пишет в поток ответов 51 +==== Внутренние ссылки: ==== 20 20 53 +====== Дочерние страницы: ====== 21 21 22 -Клиент кладет заявку в поток заявок. 23 -Сервер забирает заявку из потока заявок. 24 -Сервер выполняет обработку. 25 -Сервер кладет результат обработки в поток ответов. 26 -Клиет забирает результаты из потока ответов. 55 +{{children/}} 27 27 28 - Вкачестве промежуточного узламежду клиентом и сервером может выступать очередьсообщений.57 +====== Обратные ссылки: ====== 29 29 30 -Вопросы 31 -1) Если несколько клиентов работают через один поток, то способные ли они 32 -1.1) Получать ответы только на свои заявки, не пересекаясь с другими 33 -1.2) Получать весь поток ответов и фильтровать, отбирая только свои ответы 34 -2) Вопрос скорости обработки. Успевает ли сервер обрабатывать весь поток заявок или же очередь заявок нарастает. 35 -3) Вопрос раззмеров очереди сообщений. 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}} 36 36 71 +----