系统性能边界分析与实际应用案例
1. 吞吐量边界分析
1.1 饱和吞吐量
在一个排队系统中,当某个排队中心达到饱和状态时,服务器的利用率为 100%,即 ρ = 1。根据利特尔法则(Little’s law),可以得到公式 ρ ≡ 1 = Xmax Dmax ,其中 Xmax 表示最大吞吐量,Dmax 表示最长的服务需求。在排队回路中,达到饱和的中心被称为瓶颈中心,它控制着系统的最佳可能吞吐量。通过对公式进行变形,可以得到 Xmax = 1 / Dmax 。需要注意的是,一旦达到饱和点,Xmax 就与负载 N 无关,它在与负载 N 的关系图中表现为一条水平的虚线。
在实际系统中,瓶颈中心通常会有最长的队列或等待线。这是因为瓶颈中心上游的所有中心(如图 7.1 中的 Da)的服务需求都小于 Db,所以上游队列的所有完成请求都会堆积在瓶颈队列中,导致瓶颈队列变长。同样,瓶颈下游的所有队列的服务需求也都小于 Db,但它们只能处理从瓶颈队列流出的完成请求,因此无法缩短瓶颈队列的长度。
1.2 无竞争吞吐量
无竞争情况下,通过图 7.1 中的回路所需的最短时间 Rmin 是所有中心服务需求的总和,即 Rmin = Da + Db + Dc 。将其代入响应时间定律(Response Time Law),可以得到 Da + Db + Dc = N / X - Z ,求解吞吐量 X 可得 X = N / (Da + Db + Dc + Z) 。这是在无竞争的特殊约束下的吞吐量。
将无竞争吞吐量与负载 N 进行绘图,它表现为图 7.2 中的倾斜直线,我们将其记为 Xlin,其一般形式为 Xlin = N / (D + Z) ,其中