QPS 每秒查询数

QPS 全称是 Queries Per Second,即每秒查询数,是衡量系统性能的一个常用指标,尤其用于 接口服务、数据库、搜索引擎、网关等高并发系统中

QPS 表示系统在单位时间内能处理的请求数量:

QPS = 每秒钟处理的请求数量

一个 Web 接口平均每秒能处理 1000 个请求,那它的 QPS 就是 1000。

某电商秒杀活动,接口 QPS 峰值达到 50000,意味着系统每秒能处理 5 万个请求。

QPS 与其它指标的关系

指标

说明

QPS

每秒请求数,体现系统并发能力

TPS(Transactions Per Second)

每秒事务数,通常用于数据库/支付系统

RT(Response Time)

请求平均响应时间

并发数

同一时刻同时处理的请求数

吞吐量

一段时间内系统总共处理的数据/请求数量

QPS 高 ≠ 性能好,还需要 RT 低、错误率低 才是系统健康的表现

如何计算 QPS

公式如下:

QPS = 总请求数 / 测试时长(秒)

举例:压测 10 分钟,接口收到总共 60 万个请求:

QPS = 600000 / (10 * 60) = 1000

如何监控 QPS

可以使用以下方式实时监控:

工具

说明

SkyWalking

提供服务、端点级别 QPS 指标

Prometheus + Grafana

拉取系统/应用的 QPS 指标,实时可视化

Nginx

使用日志 + ngx_http_stub_status_module 模块统计请求速率

Spring Boot Actuator

配合 Micrometer 暴露 QPS 指标

日志分析工具

如 ELK/EFK,通过 Nginx/网关日志统计请求量

如何提升 QPS

  1. 接口层优化
    • 异步处理(CompletableFuture、WebFlux)
    • 降低响应时间
  1. 服务层优化
    • 使用缓存(Redis、本地缓存)
    • 减少不必要的依赖调用
  1. 数据库优化
    • 分库分表、读写分离
    • 缓存热点数据
  1. 架构级优化
    • 使用网关限流 + 熔断
    • 多实例 + 负载均衡
    • 引入消息队列异步削峰
  1. 部署优化

使用高性能服务器

容器化 + 自动扩容(K8s + HPA)

QPS 压力测试工具推荐

工具

特点

Apache JMeter

GUI 工具,功能全面,支持断言

wrk

命令行工具,压测能力强,适合 Linux 环境

Locust

Python 写的压力测试框架,适合自定义测试逻辑

ab(Apache Bench)

简单轻量,但功能较弱

QPS 表示系统每秒能处理多少个请求,是衡量服务并发性能的核心指标之一。QPS 高、RT 低、错误率低,才是高性能系统的关键特征。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

思静鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值