怎么理解的并发量和QPS?

本文介绍了并发量和QPS(每秒查询率)的区别,指出并发量并不等同于QPS,而是涉及用户行为、服务器配置等多个因素。通过B站和淘宝的案例分析,说明并发量无法直接计算,而QPS可以通过某些数据估算。并发量可理解为在线用户数,而QPS反映系统处理能力。在服务器架构设计时,应依据最大支持的QPS值来考虑。
摘要由CSDN通过智能技术生成

前言

查阅了很多文章,发现很多人对于并发量和QPS这个理解都有些片面,或者只是一个模糊的概念。你肯定听过有人会说:我希望这个网站能支持10W并发量。老板,你确定是说的没错,你说的是10W并发量还是说10W流量?这是两个完全不同的概念。

概念

要理解并发量,首先先科普几个概念

  • PV(访问量):即Page View, 即页面浏览量或点击量,用户每次刷新即被计算一次。
  • UV(独立访客):即Unique Visitor,访问您网站的一台电脑客户端为一个访客。00:00-24:00内相同的客户端只被计算一次。
  • IP(独立IP):即Internet Protocol,指独立IP数。00:00-24:00内相同IP地址之被计算一次
  • QPS:(Query Per Second)每秒钟request/事务 数量(QPS= 并发数/平均响应时间 )
  • 并发数: 系统同时处理的request/事务数(并发数 = QPS*平均响应时间)
  • 响应时间: 一般取平均响应时间

很多人认为并发量等同于QPS,其实它们是完全不一样的一个概念。

*- 并发数:并发数的意思是指网站或者系统同时处理的事务数或者请求数,这个“同时”取决于你的业务执行的时间。记住:重点是并非是同一秒或者毫秒执行的数量,是同一个业务的同时的执行数量。理解这个有利于理解并发数这个概念

- QPS:就是每秒钟执行的事务或者请求数。这个就是计算机或者系统的具体执行能力。QPS计算的方式很多,并没有一个完全统一的方式进行计算,具体还要根据相关的业务来进行推算,甚至有时候是通过业务部门的评估得出,一般取高峰值。我们可以在测试的时候模拟一个最大的QPS,从而算出系统能支持的最大并发数。*

分析

下面我尝试结合案例来分析下
在这里插入图片描述

这是爱站查询的B站的SEO信息,我们可以看到B站的日均IP大概是300多万,日均PV大概是2600万。那我们可以计算出B站的并发量大概是多少吗?首先我们要明确PV2600万不代表并发就是2600万,IP300万也不能说并发量就是300万,但是这两个值都是具有参考价值的。假设一天中80%的访问都集中在20%的时间内(峰值)
( 26000000 * 0.8 ) / (86400 * 0.2 ) = 1203 (QPS)
我们通过计算大约可以估算B站的QPS是1200。什么?你是不是觉得很吃惊?B站的QPS才1200?当然这里的qps只是一个平均值,并不是最大值,最大值肯定不会只有1200。那么它的并发量是多少?怎么计算呢?
答案是无法计算出来。并发量是一个业务同时执行的数量,具体是什么业务?一个网站这么多业务,有的用户在登录,有的用户在看视频,有的用户在刷弹幕,有的用户什么也不干。所以说并发量这个东西并不是单单根据PV或者IP就可以计算衡量出来的,它涉及大量用户行为和服务器配置架构以及业务执行时间,网络带宽等。
所以并发量其实就可以简单粗暴地认为就是你的网站能正常容纳的人数,注意是正常,实际上就是当前在线用户数。虽然这是不准确的,但是从某种意义上来讲,在线用户数就大概等于并发用户数了。所以我们可以大概估算出B站的每天并发量大概是200-400万左右这样子。当然了这里我说的是平均的值,可能有时候网站举办有些活动比如抢购,秒杀啊等个别高并发业务,是会达到上千万这种峰值。
再给一个数据,淘宝的日均PV达到2亿,日均IP有5000W,那么我就可以猜测它的平均并发量大概就是5000W上下,最大并发量肯定上亿了。

总结

并发量可以简单粗暴理解为在线用户数或者同时进行业务操作的用户数。QPS并不是并发量,但是有可能等于并发量。
下次如果再有人问:我要做一个支持10W并发的网站,你心理肯定要知道,他的意思其实是要做个能支持10W用户同时在线的网站,而这10W用户同时在线的时候,QPS理论上是有可能达到10W的。所以我们做服务器架构的时候要根据最大支持QPS的值来考虑。

  • 8
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值