返回顶部
首页 > 资讯 > 后端开发 > JAVA >QPS、TPS、RT、并发用户数、吞吐量
  • 875
分享到

QPS、TPS、RT、并发用户数、吞吐量

服务器java网络 2023-08-17 20:08:37 875人浏览 安东尼
摘要

文章目录 QPSTPS并发数吐吞量RT计算1:QPS、RT、并发数计算PVUVDAUMAU计算2:峰值QPS和机器计算 QPS QPS Queries Per Second 是每秒查询率 ,是一台服务器每秒能够相应的查

QPS

QPS Queries Per Second 是每秒查询率 ,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准, 即每秒的响应请求数,也即是最大吞吐能力。

TPS

TPS Transactions Per Second 也就是事务数/秒。一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数,

QPS和TPS区别

举例,请求一个index.html 页面,客户端发起了三个请求(CSSjs、index接口),那么此时TPS =1 、QPS =3 。

在针对单接口的时候TPS = QPS。

并发

并发数(并发度):指系统同时能处理的请求数量,同样反应了系统的负载能力。这个数值可以分析机器1s内的访问日志数量来得到。

压测时,一般都是指定并发数来压出单实例的QPS拐点,即一步一步提高并发数来测出对应的QPS,平均RT,错误率

  • 并发数:100
  • 并发数:300
  • 并发数:500

吐吞量

吐吞量:吞吐量(Throughput)是指系统在单位时间内处理请求的数量,TPS、QPS都是吞吐量的常用量化指标

RT

响应时间:RT(Response-time)就是从客户端请求发起到服务器响应结果的时间。RT这个参数是系统最重要的指标之一,它的大小直接反应了当前系统的响应状态。基本和咱们用户体验息息相关,现在好一点监控系统一般都有三个RT,即平均、最大、最小。

P99,P95,P50

一般系统RT 100ms 以内是比较正常的,300ms 勉强可以接受,1s的话再加上一些其他的外因,给用户的体验就是实实在在的不爽了。

P99 < 1s,P95 < 300ms

上面几个名词的计算关系

  • QPS = 并发数 / 平均响应时间

  • 并发数 = QPS * 平均响应时间

计算1:QPS、RT、并发数计算

以下示例来着互联网文章-艾小仙

假设公司每天早上9点到10点1个小时内都有员工要上厕所,公司有3600个员工,平均每个员工上厕所时间为10分钟,我们来计算一下。

QPS = 3600/60*60 1

RT = 10*60 600秒

并发数 = 1 * 600 600

这样就意味着如果想达到最好的蹲坑体验,公司需要600个坑位来满足员工需求,否则的话上厕所就要排队等待了。


针对以上答案不是很好理解,我是这么分析的,其实上面的需求是 1个小时 让3600人拉完屎,即厕所服务的整体吞吐量需求为 3600人/1时 = 3600人/3600s = 1/s,即QPS = 1

那么需要多少个厕所实例来满足需求呢

由于单个厕所实例的qps = 1人/10m = 1人/600s。

所以需要 1人/s / 1人/600s = 600厕所实例

QPS

  • 厕所服务:3600人/1时 = 1 QPS
  • 厕所实例:1人/10m = 1/600 = 0.00167 QPS

响应时间

  • 厕所服务:1h

  • 厕所实例:10m

并发数

如果按照上面的计算公式 并发数 = QPS * 平均响应时间,那这里厕所实例的并发数等于多少呢?

1 * 1h = 3600??? 不对哦,这里的平均响应时间 是每个人的即1* 10m = 600

也可以这么理解厕所服务提供了 600 个厕所坑位,所以支持的最大并发数,即同时拉屎数 = 600…

  • 厕所服务:1QPS(服务的QPS) * 10m (实例的响应时间 一个call) = 600
  • 厕所实例:0.00167 QPS * 10m = 1

吞吐量

  • 厕所服务的吞吐量为 3600 TPH = 1 TPS

PV

PV(Page View):页面访问量,即页面浏览量或点击量,用户每次刷新即被计算一次。可以统计服务一天的访问日志得到。 可以通过Nginx、Apache之类的WEB Server得到。

UV

UV(Unique Visitor):独立访客,统计1天内访问某站点的用户数。可以统计服务一天的访问日志并根据用户的唯一标识去重得到。可以通过Nginx、Apache之类的Web Server得到。

DAU

DAU(Daily Active User),日活跃用户数量。常用于反映网站、互联网应用或网络游戏的运营情况。DAU通常统计一日(统计日)之内,登录或使用了某个产品的用户数(去除重复登录的用户),与UV概念相似

MAU

MAU(Month Active User):月活跃用户数量,指网站、app等去重后的月活跃用户数量

计算2:峰值QPS和机器计算

原理:按二八定律来看,如果每天80%的访问集中在20%的时间里,这20%时间叫做峰值时间 。

这里应该根据业务场景来定,例如这个时间 * 20%

针对一些政企机关单位这个时间不是 24h而是8h,应灵活运用。

公式

  • 峰值QPS:( 总PV数 * 80% ) / ( 每天秒数 * 20% ) = 峰值时间每秒请求数(QPS)

  • 需要的机器:峰值时间每秒QPS / 单台机器的QPS = 需要的机器

示例

:每天100w PV 的在单台机器上,这台机器峰值是多少QPS

:( 1000000 * 0.8 ) / (86400 * 0.2 ) = 46 (QPS)

如果有成熟的监控可以从监控上去看实际的QPS与计算的偏差。

:如果一台机器的QPS是18,需要几台机器来支持?

:46/ 18 = 3

来源地址:https://blog.csdn.net/abu935009066/article/details/128134965

--结束END--

本文标题: QPS、TPS、RT、并发用户数、吞吐量

本文链接: https://lsjlt.com/news/373311.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • QPS、TPS、RT、并发用户数、吞吐量
    文章目录 QPSTPS并发数吐吞量RT计算1:QPS、RT、并发数计算PVUVDAUMAU计算2:峰值QPS和机器计算 QPS QPS Queries Per Second 是每秒查询率 ,是一台服务器每秒能够相应的查...
    99+
    2023-08-17
    服务器 java 网络
  • 一文搞懂高并发性能指标:QPS、TPS、RT、吞吐量
    一、QPS,每秒查询QPS:Queries Per Second意思是“每秒查询率”,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。互联网中,作为域名系统服务器的机器的性能经常用每秒查询率...
    99+
    2023-06-04
  • QPS/TPS/并发量/系统吞吐量的概念
      QPS: 每秒钟处理完请求的次数;注意这里是处理完。具体是指发出请求到服务器处理完成功返回结果。可以理解在server中有个counter,每处理一个请求加1,1秒后counter=QPS。 ...
    99+
    2024-04-02
  • Java并发编程:如何实现高吞吐量的文件读写?
    在大型数据处理系统中,文件读写是一个必不可少的环节。然而,传统的文件读写方法在高并发、大数据量的情况下往往存在性能瓶颈,无法满足系统的需求。本文将介绍一种基于Java并发编程的文件读写方案,可以实现高吞吐量的文件读写。 使用NIO实现文...
    99+
    2023-10-17
    并发 响应 文件
  • MySQL 8.0限制用户并发连接数的两个参数
    MySQL 8.0限制用户并发连接数的两个参数 max_connectionsmax_user_connections max_connections 针对所有用户总体而言,MySQL Server允许的最大并发客户端连接数,默...
    99+
    2023-08-17
    mysql 数据库 java
  • 数据库中的并发控制:保持多用户和谐
    ...
    99+
    2024-04-02
  • Go语言在云计算中如何处理大量的并发用户请求?
    随着云计算的普及和应用,云计算技术已经成为了现代IT行业中最前沿和关键的技术之一。在云计算中,作为应用程序的基础语言之一的Go语言,因其高效的并发处理和轻量级特性,成为许多企业和开发者选择的语言之一。而在云计算场景中,处理大量的并发请求是必...
    99+
    2023-05-18
    Go语言 云计算 并发用户请求
  • 服务器中用户并发数已满指的是什么意思
    小编给大家分享一下服务器中用户并发数已满指的是什么意思,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!用户并发数已满的意思就是同时登录的用户太多了;用户在访问或者下...
    99+
    2023-06-25
  • 帝国cms使用自定义函数获取用户发表新闻数量的方法
    介绍了帝国cms系统中通过用户自定义函数获取用户发表新闻数量的方法,主要是分享下帝国cms自定义函数功能。 在帝国cms中实现获取用户发表的新闻数量,没有现成的方法,不过可以用自定义函数来实现,一起来看看。 帝国cm...
    99+
    2022-06-12
    自定义函数 文章数
  • 利用js实现Ajax并发请求限制请求数量的示例代码
    出现问题描述:当不确定异步请求个数时,为防止当一瞬间发生上百个http请求时,导致堆积了无数调用栈进而导致内存溢出问题。 要求:将同一时刻并发请求数量控制在3个以内,同时还要尽可能快...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作