---
title: M/M/1：利用率与尾延迟
url: https://doc.liz6.com/theory/03-queueing-theory/04-mm1-and-tail-latency
locale: zh
area: theory
tags:
- 排队论
- 基础理论
date: 2026-09-10
modified: 2026-09-10
description: M/M/1 把随机到达和随机服务压缩成一个能完整求解的模型。它解释利用率接近 1 时的非线性等待，也展示为什么一个平均值不足以代表用户经历。
---

# M/M/1：利用率与尾延迟

M/M/1 把随机到达和随机服务压缩成一个能完整求解的模型。它解释利用率接近 1 时的非线性等待，也展示为什么一个平均值不足以代表用户经历。

## 从状态平衡推到均值

假设外生 Poisson 到达率 $\lambda$，服务时间独立指数分布、速率 $\mu$，两者相互独立；单服务台、FCFS、无限等待空间、不放弃、不重试。状态 $n$ 为系统内请求数。到达使 $n\to n+1$，速率 $\lambda$；非空时完成使 $n\to n-1$，速率 $\mu$。

稳态相邻状态满足 $\pi_n\lambda=\pi_{n+1}\mu$。令 $\rho=\lambda/\mu$，归一化几何级数得到：

$$\pi_n=(1-\rho)\rho^n,\quad \rho<1;\qquad L=\sum_{n\ge0}n\pi_n=\frac{\rho}{1-\rho}.$$

于是：

$$E[T]=\frac1{\mu-\lambda},\quad E[W_q]=\frac{\rho}{\mu-\lambda},\quad L_q=\frac{\rho^2}{1-\rho}.$$

$\rho\ge1$ 时无限状态链没有可归一化的稳态分布，不能继续代入求出“负等待”。$\rho=1$ 也不是随机系统的安全平衡点。

## 一个可以精确计算的尾部

到达者以概率 $\pi_n$ 看见前方 $n$ 个请求。指数服务无记忆，因此它的系统时间是 $n+1$ 个独立指数服务之和；按几何权重混合后得到：

$$P(T>t)=e^{-(\mu-\lambda)t},\qquad t\ge0.$$

等待时间不同：有 $1-\rho$ 的概率直接开始服务。

$$P(W_q>t)=\rho e^{-(\mu-\lambda)t},\qquad
P(W_q=0)=1-\rho.$$

系统时间的 $p$ 分位数为 $t_p=-\ln(1-p)/(\mu-\lambda)$。因此本模型中 p99 约为均值的 4.605 倍；这不是任意线上服务的比例。

**M/M/1：利用率与尾延迟 · 实验**

稳态M/M/1、FCFS、无限等待空间，μ=100/s。Wq尾部在t=0为ρ，因为其余请求无需等待；下图竖线标记当前利用率，均为模型内精确值。


固定 $\mu=100$/s，$\rho=0.8$ 时，平均系统时间 50 ms、平均等待 40 ms、系统时间 p99 约 230 ms。变为 $\rho=0.9$，三者分别为 100、90、461 ms。服务均值始终是 10 ms。

## 用目标反推边界，但保留假设

若该模型要求系统时间 p99 不超过 200 ms，则：

$$\mu-\lambda\ge\frac{\ln100}{0.2}\approx23.026\ \mathrm{s}^{-1}.$$

当 $\mu=100$/s 时，模型允许 $\lambda\le76.974$/s。这里得到的是带条件的速率范围；真实服务若存在长尾、批量、多个阶段或变慢的下游，应重新建模并压测。

利用率曲线也不是扩容收益的全貌。增加线程可能不改变真正瓶颈的 $\mu$；如果引入争用，$\mu$ 反而下降。模型参数需要从服务占用和负载行为中识别。

## 自检

1. 利用率 50%，是否有一半请求的总时延为零？

<details><summary>参考思路</summary>

有一半到达无需排队，但仍要服务。$W_q$ 在零处有概率质量，$T$ 没有。两者相差一个服务时间，不能把等待概率当成总时延分布。

</details>

2. 能否把平均时延乘 4.605 作为生产 p99？

<details><summary>参考思路</summary>

只有在这里的稳态 FCFS M/M/1 模型适用时才有该精确关系。真实时延可能是混合分布、多阶段或相关过程，必须记录分布并检查模型误差。

</details>

## 延伸

[MIT Urban Operations Research §4.6.1](https://web.mit.edu/urban_or_book/www/book/chapter4/4.6.1.html)给出 M/M/1 的状态分析与系统时间分布。下一篇保留服务均值，放宽指数服务假设。
