切换风格

默认梦幻1 梦幻9 白云 简约黑色 花卉 简约米色 城市 粉色心情 雪山 绿野仙踪 伦敦 薰衣草 加州 星空
回复 2

72

主题

369

帖子

522万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5221595
PHP高并发和大流量的解决方案[复制链接]
发表于 2018-8-14 15:42:54 | 显示全部楼层 |阅读模式
一  高并发的概念

在互联网时代,并发,高并发通常是指并发访问。也就是在某个时间点,有多少个访问同时到来。


二  高并发架构相关概念


1.QPS (每秒查询率) : 每秒钟请求或者查询的数量,在互联网领域,指每秒响应请求数(指HTTP请求)

2. PV(Page View):综合浏览量,即页面浏览量或者点击量,一个访客在24小时内访问的页面数量

--注:同一个人浏览你的网站的同一页面,只记做一次pv

3. 吞吐量(fetches/sec) :单位时间内处理的请求数量 (通常由QPS和并发数决定)

4. 响应时间:从请求发出到收到响应花费的时间

5. 独立访客(UV):一定时间范围内,相同访客多次访问网站,只计算为1个独立访客

6. 带宽:计算带宽需关注两个指标,峰值流量和页面的平均大小

7. 日网站带宽: PV/统计时间(换算到秒) * 平均页面大小(kb)* 8


三 需要注意点:

1. QPS不等于并发连接数(QPS是每秒HTTP请求数量,并发连接数是系统同时处理的请求数量)

2. 峰值每秒请求数(QPS)= (总PV数*80%)/ (六小时秒数*20%)【代表80%的访问量都集中在20%的时间内】

3. 压力测试: 测试能承受的最大并发数 以及测试最大承受的QPS值

4. 常用的性能测试工具【ab,wrk,httpload,Web Bench,Siege,Apache JMeter】



四 优化

1. 当QPS小于50时
优化方案:为一般小型网站,不用考虑优化

2.当QPS达到100时,遇到数据查询瓶颈
优化方案: 数据库缓存层,数据库的负载均衡

3.当QPS达到800时, 遇到带宽瓶颈
优化方案:CDN加速,负载均衡

4. 当QPS达到1000时
优化方案: 做html静态缓存

5. 当QPS达到2000时
优化方案: 做业务分离,分布式存储


高并发解决方案案例:

1.流量优化  

防盗链处理(去除恶意请求)


2.前端优化
(1) 减少HTTP请求[将css,js等合并]
(2) 添加异步请求(先不将所有数据都展示给用户,用户触发某个事件,才会异步请求数据)
(3) 启用浏览器缓存和文件压缩
(4) CDN加速
(5) 建立独立的图片服务器(减少I/O)

3. 服务端优化
(1) 页面静态化
(2) 并发处理
(3) 队列处理

4.数据库优化
(1) 数据库缓存
(2) 分库分表,分区
(3) 读写分离
(4) 负载均衡

5.web服务器优化
(1) nginx反向代理实现负载均衡
(2) lvs实现负载均衡

回复

使用道具 举报

1

主题

16

帖子

3841

积分

SVIP会员

Rank: 10Rank: 10Rank: 10

积分
3841
发表于 2018-8-16 15:25:13 | 显示全部楼层
不错不错
不错不错
回复 支持 反对

使用道具 举报

72

主题

369

帖子

522万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5221595
发表于 2018-8-16 15:28:00 | 显示全部楼层
chaoren131415 发表于 2018-8-16 15:25
不错不错
不错不错

必须滴!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|Archiver|手机版|小黑屋|阿西里西官网论坛 ( 黔ICP备15005599号-4 )

GMT+8, 2020-8-4 05:23 , Processed in 0.075603 second(s), 24 queries .

Powered by Discuz! X3.4

© 2001-2018 阿西里西论坛 html php TP5资源下载群②

返回顶部