为什么减少负载下的容量会改善服务器的延迟?

为什么减少负载下的容量会改善服务器的延迟?

在伯克利的这次演讲,Jeff Dean 的幻灯片在演示进行到大约三分之一处包含以下注释:

Non-intuitive: remove capacity under load to improve latency (?!)

我的直觉是,减少机器上的负载可以减少延迟,但这篇文章却让情况看起来恰恰相反,至少对谷歌来说是这样。为什么会这样呢?

答案1

想象一下两条装配线:

一家有两台机器,每台机器完成一半的工作。每台机器大约需要十分钟。因此每十分钟就有一件产品下线,平均每件产品需要二十分钟才能通过生产线。

另一家工厂有 20 台机器,每台机器只完成二十分之一的工作。每台机器大约需要两分钟。因此,每两分钟就有一件产品下线,平均每件产品需要四十分钟才能通过生产线。

第二条装配线的产能是原来的五倍,但等待时间却是原来的两倍。

现在考虑一下,如果普通机器在大约十分之一的时间内出现几秒钟的故障。第二条装配线将出现更多的延迟峰值,因为您有二十次机会出现一次。

相关内容