延迟和响应时间有什么区别?

gst*_*low 12 performance latency throughput low-latency

我开始阅读著名的 Martin Fowler 书(企业应用程序架构模式)

我不得不提一下,我正在阅读翻译成我的母语的书,所以这可能是我误解的一个原因。

我找到了他们的定义(回译成英文):

响应时间- 处理一些外部请求的
时间 延迟- 获得任何响应之前的最短时间。

对我来说也是一样。你能强调一下区别吗?

Roa*_*ior 45

看待这一点的一种方式是说传输延迟 + 处理时间 = 响应时间

传输延迟是向/从处理组件传输请求/响应所需的时间。然后您需要添加处理请求所需的时间。

例如,假设有 5 个人尝试同时打印一张纸,打印机需要 10 秒钟来处理(打印)每张纸。

首先处理打印请求的人会看到0 秒的延迟和10 秒的处理时间 - 因此响应时间为 10 秒。

最后处理打印请求的人看到的延迟为 40 秒(在他之前的 4 个人)和10 秒的处理时间 - 因此响应时间为 50 秒。

  • 你的例子就是一个完美的解释! (2认同)
  • 我完全困惑了 (2认同)

Aru*_*run 15

正如 Martin Kleppman 在他的《设计数据密集型应用程序》一书中所说:

延迟是请求等待处理的持续时间 - 在此期间它处于潜在状态,等待服务。用于诊断目的,例如:延迟峰值

响应时间是客户端发送请求和接收响应之间的时间。它是往返延迟和服务时间的总和。它用于描述应用程序的性能。


Kit*_*Kit 10

这篇文章是关于差异的好读物,并用这个简单的方程进行了最好的总结,

延迟 + 处理时间 = 响应时间

在哪里

  • 延迟 = 消息在两点之间传输的时间(例如在网络上、通过网关等)
  • 处理时间=处理消息所花费的时间(例如格式之间的转换、丰富或其他)
  • 响应时间=这些时间的总和。

如果处理时间相当短(在设计良好的系统中就是这种情况),那么出于实际目的,响应时间和延迟在感知的时间流逝方面可能是相同的。也就是说,准确地说,请使用定义的术语,不要混淆或混淆两者。