文章目录
1、高并发架构相关概念
1)并发
并发,在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任一个时刻点上只有一个程序在处理机上运行。
2)我们说的高并发是什么?
上面的定义明显不是我们通常所言的并发,在互联网时代,所讲的并发、高并发,通常是指并发访问。也就是在某个时间点,有多少个访问同时到来。
通常如果一个系统的日PV在千万以上,有可能是一个高并发的系统。有的公司完全不走技术路线,全靠机器堆,这不是我们的讨论范围。
3)高并发的问题,我们具体该关心什么?
- QPS:每秒钟请求或者查询的数量,在互联网领域,指每秒响应请求数(指HTTP请求);
- 吞吐量:单位时间内处理的请求数量(通常由QPS与并发数决定);
- 响应时间:从请求发出到收到响应花费的时间(例如:系统处理一个HTTP请求需要 100ms,这个 100ms 就是系统的响应时间);
- PV:综合浏览量(Page View),即页面浏览量或者点击量,一个访客在 24 小时内访问的页面数量。同一个人浏览你的网站同一页面,只记作一次PV;
- UV:独立访客(UniQue Visitor),即一定时间范围内相同访客多次访问网站,只计算为1个独立访客;
- 带宽:计算带宽大小需关注两个指标, 峰值流量 和 页面的平均大小。
- 日网站带宽 = PV / 统计时间(换算到秒)x 平均页面大小(单位KB)x 8
- 峰值一般是平均值得倍数,根据实际情况来定;
- QPS 不等于 并发连接数;
- QPS是每秒HTTP请求数量,并发连接数是系统同时处理的请求数量(1个HTTP请求叫做1个QPS,一个并发连接数有可能里面有多个HTTP请求)
- 峰值每秒请求数(QPS) = (总PV数 * 80%) / (6小时秒数 * 20%)【代表80% 的访问量集中在 20% 的时间】;
- QPS压力测试:用来了解单台服务器所能承受的QPS值是多少:
- 测试能承受的最大并发数(测试服务器最大能承受多少QPS,网站一天PV是多少,可以计算出来整个QPS的峰值是多少);
- 测试最大承受的QPS值
注:首先要知道 整个网站的日PV 是多少,服务器单台QPS的承受能力 是多少(如:我们日QPS经过计算得到200(单机峰值QPS为200)