系统并发量及QPS简单解释

本文详细解释了PV(页面浏览量)、UV(独立访客)、IP(互联网协议访问量)、TPS(每秒事务处理数)、QPS(每秒查询数)和RPS(每秒请求数)的概念及其计算方式,并通过实例展示了如何预估网站的QPS需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PV 即 page view,页面浏览量
   用户每一次对网站中的每个页面访问均被记录1次。用户对同一页面的多次刷新,访问量累计。

UV 即 Unique visitor,独立访客
   通过客户端的cookies实现。即同一页面,客户端多次点击只计算一次,访问量不累计。

IP 即 Internet Protocol,本意本是指网络协议,在数据统计这块指通过ip的访问量。
   即同一页面,客户端使用同一个IP访问多次只计算一次,访问量不累计。
TPS 即Transactions Per Second的缩写,每秒处理的事务数目。一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数,最终利用这些信息作出的评估分。
QPS 即Queries Per Second的缩写,每秒能处理查询数目。是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。
RPS 即Requests Per Second的缩写,每秒能处理的请求数目。等效于QPS

因特网上,经常用每秒查询率来衡量域名系统服务器的机器的性能,其即为QPS。
对应fetches/sec,即每秒的响应请求数,也即是最大吞吐能力。
计算关系:
QPS = 并发量 / 平均响应时间
并发量 = QPS * 平均响应时间

根据以上计算关系,我们来预估下单日访问量在 1000W 需要多大的QPS来支持:
通常情况下,80% 的访问量集中在 20%的时间,算一下这 1000w pv实际需要机器达到多少qps才能满足,
qps = (1000w * 0.8) / (24 * 3600 * 0.2)
qps = 462.9
根据压力测试的反馈,单台机子的QPS是多少,利用以上结果就可以算出需要几台机器 或 大致推算出需不需要使用缓存配置

方案一: 使用集群服务器 不使用缓存服务器
方案二: 使用集群服务器 同时使用缓存服务器 (推荐)

### JMeter 中吞吐量、QPS 和 TPS 的区别及关系 #### 吞吐量 (Throughput) 吞吐量是指单位时间内处理的工作量,具体到性能测试工具如 JMeter,则表示在特定时间段内完成的请求数。这可以被看作是系统能够承受的最大工作负载能力之一。通过调整并发用户数量和其他参数,可以在不同条件下测量服务器端口或应用程序的服务水平[^1]。 #### QPS(Queries Per Second) QPS 表示每秒钟执行成功的查询次数。当讨论的是数据库或者任何提供数据检索服务的应用程序时,“查询”特指一次有效的读取操作;而在更广泛的意义上讲,它也可以代表向 Web API 发送并成功接收回复的一次调用。对于某些类型的请求来说,如果它们不涉及复杂的业务逻辑处理而仅仅是简单的信息获取,那么此时 QPS 可能会接近甚至等于 TPS[^4]。 #### TPS(Transactions Per Second) TPS 是指一秒钟内系统所能处理的事物数目。事物在这里指的是一个完整的业务流程单元——比如提交订单、登录账户等复杂度较高的动作集合。因此,在大多数情况下,由于单个交易可能包含多个子步骤(例如多次HTTP 请求),所以实际观测得到的 TPS 值往往低于 QPS 或者单纯的 HTTP 请求数目统计结果。特别是在那些涉及到多层架构设计的企业级应用环境中尤为明显[^2]。 #### 关系说明 - 如果是对单一查询接口进行压力测试,并且该接口本身不会触发其他额外的服务调用,则在这种特殊情形下 TPS 将近似于 QPS。 - 对于较为复杂的交易过程而言,因为每一个事务可能会由若干个独立的操作组成,故其对应的 TPS 数字一般都会小于单纯基于网络层面定义出来的 QPS 指标。 - 此外,随着响应时间和延迟等因素的变化,即使是在相同的硬件配置和软件环境下,上述三个关键绩效指标之间的比例也可能发生改变。这意味着为了获得更加精确的结果评估,应当综合考虑多种因素的影响[^3]。 ```python def calculate_tps(samples, duration_seconds): """ 计算TPS """ tps = samples / duration_seconds return round(tps, 2) def calculate_qps(requests_per_second): """ 计算QPS """ qps = requests_per_second return round(qps, 2) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值