В чем разница между задержкой и временем отклика? - PullRequest
0 голосов
/ 24 сентября 2019

Я начал читать знаменитую книгу Мартина Флоулера (образцы архитектуры корпоративных приложений)

Я должен упомянуть, что я читаю книгу, переведенную на мой родной язык, поэтому это может быть причиной моего недопонимания.

Я нашел там определения (обратный перевод на английский):

Время ответа - время обработки какого-либо внешнего запроса
Задержка -минимальное количество времени, прежде чем получить какой-либо ответ.

Для меня это то же самое.Не могли бы вы выделить разницу?

Ответы [ 5 ]

1 голос
/ 24 сентября 2019

Один из способов посмотреть на это - сказать, что задержка + время обработки = время отклика .

Задержка - это время, необходимое для передачи запроса / ответа.Затем вам нужно добавить время, необходимое для обработки запроса.

Например, скажем, что 5 человек пытаются напечатать один лист бумаги одновременно, а на обработку принтера уходит 10 секунд (печать) каждый лист.

Лицо, чей запрос на печать обрабатывается первый , видит латентность 0 секунд и обработка время 10 секунд- так что ответ время 10 секунд.

В то время как лицо, чей запрос на печать обрабатывается последний , видит задержку , равную 40 секундам (4 человека до него) и время обработки времени10 секунд - так что ответ время 50 секунд.

0 голосов
/ 24 сентября 2019

Q : Не могли бы вы выделить разницу ?

Позвольте мне начать использовать ноу-хауот профессионалов из МСЭ-Т (бывший CCITT), которые на протяжении десятилетий потратили многие тысячи человеко-лет усилий на высочайший уровень профессионального опыта и разработали точную и ответственную методологию для измерения обоих:

Какие отраслевые стандарты приняты для того, чтобы справиться с этим?

С первых лет существования международных отраслевых стандартов (ну, еще где-то в 60-х годах) эти отраслевые профессионалы создали концепцию тестирования сложных систем.повторяемым и повторно проверяемым образом.

 System-under-Test (SuT), inter-connected and inter-acting across a mediation service mezzo-system

 SuT-component-[A]
 |
 +------------------------------------------------------------------------------------------------------------[A]-interface-A.0
 |           +------------------------------------------------------------------------------------------------[A]-interface-A.1
 |           |
 |           |                                                                      SuT-component-[B]
 |           |                                                                      |
 |           |                                                                      +-------------------------[B]-interface-B.1
 |           |                                                                      |               +---------[B]-interface-B.0
 |           |                          ????????????????                            |               |
 |           |                          ? mezzo-system ?                            |               |
 +-----------+                          ????????????????                            +---------------+
 |           | ~~~~~~~~~~~~~~~~~~~~~~~~ ??? ...  ... ???  ~~~~~~~~~~~~~~~~~~~~~~~~  |               |
 |           | ~~<channel [A] to ???>~~ ??? ...  ... ???  ~~<channel ??? to [B]>~~  |               |
 |           | ~~~~~~~~~~~~~~~~~~~~~~~~ ??? ...  ... ???  ~~~~~~~~~~~~~~~~~~~~~~~~  |               |
 +-----------+                          ????????????????                            +---------------+
 |            

Независимо от того, насколько формальной может показаться эта методология, она обеспечивает ясность и точность при формулировании (то же самое при разработке, тестировании и валидации) требований иявно связаны с SuT-компонентами, SuT-интерфейсами, SuT-каналами, а также с ограничениями для взаимодействийво всей экзосистеме (ах), включая ограничения ответов на появление каких-либо внешних (обычно неблагоприятных) шумовых / тревожных событий.

В конце и для ясности все части предполагаемого SuT-behaviour может быть объявлено в отношении набора однозначно определенных и задокументированных REFERENCE_POINT (s) , для которых стандарт определяет и документирует все свойства.

Правило большого пальца:

LATENCY , чаще всего выражаемое как TRANSPORT -LATENCY (между парой REFERENCE_POINT s), относится к продолжительности тривиального / примитивного события-распространение по некоторому каналу (каналам), где обработка события не преобразует содержимое распространяемого события.(Ссылка на задержку доступа к памяти - не обрабатывает данные повторно, а просто доставляет их, требуя некоторое время, чтобы «сделать это»)

ОБРАБОТКА предназначено для такого родапреобразование события каким-то замечательным образом внутри SuT-компонента.

ВРЕМЯ ОТВЕТА (наблюдаемое для REFERENCE_POINT (s) того же SuT-компонента) подразумевается как итоговая длительностькакая-то довольно сложная сквозная обработка транзакций, которая не является ни тривиальной ТРАНСПОРТНОЙ ЛАТЕНЦИЕЙ по каналу, ни упрощенным компонентом in-SuT ОБРАБОТКА , но некоторойсвоего рода композиция из нескольких (потенциально многих) таких взаимно взаимодействующих шагов, работающих по цепочке причинно-следственных связей (добавление случайных стимулов, где это необходимо, для представления помех / помех).(Ссылка. Время отклика ядра СУБД увеличивается с ростом рабочих нагрузок, прямо из-за одновременного увеличения использования некоторых ресурсов обработки, которые необходимы для внутренней запрашиваемой информации, внутренней повторной обработки и для окончательной повторной обработки доставки перед доставкой«ответ» запрашивающей стороне)

 |
 |            SuT_[A.0]: REFERENCE_POINT: receives an { external | internal } <sourceEvent>
 |           /
 |          /         _SuT-[A]-<sourceEvent>-processing ( in SuT-[A] ) DURATION
 |         /         /
 |        /         /                          _an known-<channel>-transport-LATENCY from REFERENCE_POINT SuT-[A.1] to <mezzo-system> exosystem ( not a part of SuT, yet a part of the ecosystem, in which the SuT has to operate )
 |       /         /                          /
 |      /         /                          /                  _a mezzo-system-(sum of all)-unknown-{ transport-LATENCY | processing-DURATION } duration(s)
 |     /         /                          /                  /
 |    /         /                          /                  /                         _SuT_[B.1]: REFERENCE_POINT: receives a propagated <sourceEvent>
 |   /         /                          /                  /                         /
 |  /         /                          /                  /                         /                _SuT_[B.0]: REFERENCE_POINT: delivers a result == a re-processed <sourceEvent>
 | /         /                          /                  /                       | /              | /
 |/         /|                         /................  /                        |/               |/
 o<_________>o ~~< chnl from [A.1] >~~? ??? ...  ... ??? ?~~<chnl to [B.1]>~~~~~~? o<______________>o
 |           |\                                                                   \                \
 |           | \                                                                   \                \_SuT-[B]-<propagated<sourceEvent>>-processing ( in SuT-[B] ) DURATION
 |           |  \                                                                   \
 |           |   \_SuT_[A.1]: REFERENCE_POINT: receives                              \_an known-<channel>-transport-LATENCY from <mezzo-system to REFERENCE_POINT SuT_[B.1]
 |           |
 |           |                                                                     |                |
 o<--------->o-----SuT-test( A.0:A.1 )                                             |                |
 |           |                                                                     |                |
 |           |                                                                     o<-------------->o---SuT-test( B.1:B.0 )
 |           |                                                                     |                |
 |           o<----may-test( A.1:B.1 )-------------------------------------------->o                |
 |           |         exo-system that is outside of your domain of control,       |                |
 |                     indirectly, using REFERENCE_POINT(s) that you control                        |
 |                                                                                                  |
 |                                                                                                  |
 o<-----SuT-End-to-End-test( A.0:B.0 )------------------------------------------------------------->o
 |                                                                                                  |

Используя эту методологию МСЭ-T / CCITT, примером хорошо определенного теста ВРЕМЯ ОТВЕТА будет проверка завершениятранзакция, которая будет измерять чистую продолжительность между доставкой исходного события на REFERENCE_POINT [A.0] (ввод SuT-component- [A]) и ожиданием, пока весь SuT не доставит ответ от какой-либо удаленной части (например)доставка из [A] -to- [B], плюс обработка внутри SuT-компонента- [B] и доставка ответа из [B] -back-to- [A]) до тех пор, пока не будет получен ожидаемый ответданный REFERENCE_POINT (будь то один [A.0] или другой, специфичный для цели [A.37]).

Быть в явном видеs возможно спасает от потенциального неправильного понимания в будущем (которого с тех пор старались избежать международные отраслевые стандарты).

Таким образом, требование выражается как:

1) a RESPONSE_TIME (A.0: A.37) должно быть меньше 125 [ms]
2) нетто ТРАНСПОРТНАЯ ЛАТЕНЦИЯ (A.1: B.1) должна превышать 30 [ms] в менее чем 0,1% случаев на BAU

четкие и надежные (и их легко измерить), и все заинтересованные могут интерпретировать как настройки SuT, так и результаты испытаний.

Соответствие этим однозначным требованиям квалифицирует такой определенный SuT- поведение, позволяющее безопасно соответствовать предполагаемому набору поведения, или позволить специалистам дешево выявлять, документировать и дисквалифицировать тех, кто этого не делает.

0 голосов
/ 24 сентября 2019

Задержка Время от источника, отправляющего пакет, до получателя, получающего его

Задержка - это время, которое требуется сообщению или пакету для прохождения от пункта отправления.до пункта назначения.Это простое и полезное определение, но оно часто скрывает много полезной информации - каждая система содержит несколько источников или компонентов, что вносит вклад в общее время, необходимое для доставки сообщения, и важно понимать, что это за компонентыи что диктует их производительность.

Давайте подробнее рассмотрим некоторые распространенные компоненты для типичного маршрутизатора в Интернете, который отвечает за передачу сообщения между клиентом и сервером:

Задержка распространения

Время, необходимое для прохождения сообщения от отправителя к получателю, которое является функцией расстояния по скорости, с которой распространяется сигнал.

Задержка передачи

Количество времени, необходимое для передачи всех битов пакета в канал, которое зависит от длины пакета и скорости передачи данных канала.

Задержка обработки

Количество времени, необходимое дляобработать заголовок пакета, проверить битовый уровеньl ошибок и определите пункт назначения пакета.

Задержка в очереди

Время ожидания пакета в очереди до его обработки.

Общая задержка междуклиент и сервер - это сумма всех перечисленных задержек Время ответа Общее время, затраченное между пакетом на отправку и получение пакета от получателя

0 голосов
/ 24 сентября 2019

Я дифференцирую это, используя приведенный ниже пример,

Посылка была отправлена ​​из ABC, где AB заняло 10 секунд, B (обработка) заняло 5 секунд, BC дошло до 10 секунд

Задержка = (10 + 10) сек = 20 сек

Время отклика = (10 + 5 + 10) сек = 25 сек

0 голосов
/ 24 сентября 2019

Эта статья - хорошее прочтение разницы, и ее лучше всего суммировать с помощью этого простого уравнения:

Задержка + Время обработки = Время отклика

где

  • Задержка = время прохождения сообщения между двумя точками (например, в сети, прохождении через шлюзы и т. Д.)
  • Время обработки = время егопринимает сообщение, которое будет обработано (например, перевод между форматами, обогащенный или любой другой)
  • Время ответа = их сумма.

Если время обработки достаточно короткое, что вв случае хорошо спроектированных систем, то для практических целей время отклика и задержка могут быть одинаковыми с точки зрения воспринимаемого времени.Тем не менее, чтобы быть точным, используйте определенные термины и не путайте и не путайте их.

...