高并发是大型系统架构设计的核心考量之一,它指的是系统在同一时间段内,能够同时处理大量用户请求的能力。这一能力是互联网应用(如电商秒杀、在线直播、即时通讯与支付系统)性能与稳定性的基石。
理解“高并发”不能停留于表面,它并非一个孤立的数值,而是一个由多个关键指标共同描述的系统状态。要深入掌握其内涵,必须厘清QPS、TPS和并发数这三个核心概念及其内在联系。
高并发 (High Concurrency)
高并发描述了系统处理并行请求的宏观能力。当海量用户在同一时刻或极短时间内发起操作时,系统能否快速、正确地响应,是衡量其高并发处理能力的关键。这直接关系到用户体验和业务承载力。

TPS (Transactions Per Second)
TPS,即每秒事务数,是衡量系统业务处理吞吐量的关键指标。一个“事务”通常代表一个完整的业务操作流程,可能包含多个子步骤。

例如,用户完成一次“下单支付”事务,后台可能依次执行:查询商品库存、锁定库存、创建订单、扣减用户余额、更新订单状态等多个数据库操作。这整个链条的成功完成,才算作一个有效TPS。
如果系统在1秒内成功处理了10,000个这样的下单请求,那么该系统的下单业务TPS就是10,000。TPS更侧重于从业务完成度的视角评估系统效率。
QPS (Queries Per Second)
QPS,即每秒查询率,主要用于衡量系统每秒能够响应的请求次数。它更偏向于接口或服务调用的层面。

例如,一个商品查询接口在1秒内被调用了50,000次,那么该接口的QPS就是50,000。
需要注意的是,高QPS并不等同于系统具备高并发处理能力。如果每个请求的处理时间很长,即使QPS很高,系统也可能因堆积大量未完成的请求而崩溃。QPS常用于评估Web服务器、API网关或数据库的请求处理容量。
并发数 (Concurrency)
并发数是指在某一具体时刻,系统中同时处于“正在处理”或“等待处理”状态的请求数量。它反映了系统瞬时的负载压力。

并发数可以从不同维度衡量:
- 并发连接数:指服务器同时维护的TCP连接数量,例如一台Web服务器当前与10,000个客户端保持连接。
- 并发用户数:指在业务层面,同时在线并进行操作的用户数量。例如,在秒杀活动开始瞬间,约有10,000名用户同时点击“立即购买”按钮,此时的并发用户数约为10,000。
核心概念关系总结
- QPS/TPS:体现的是吞吐率(Throughput),是单位时间内的处理“速率”。QPS侧重请求/查询,TPS侧重完整事务。
- 并发数:体现的是瞬时负载(Load),是某个“时间点”的存量压力。
- 关系:在理想且系统稳定的情况下,
QPS ≈ 并发数 / 平均响应时间。三者相互关联,共同刻画了系统在高负载下的性能全貌。优化高并发系统,本质上就是在平衡与提升这些指标。
|