PHP 百万日活五千万PV的系统架构

php基础

浏览数:91

2020-6-26

流量

日活

100万

PV

5千万

每个用户打开10个页面 每个页面5次API请求

秒QPS

流量高峰 18-22点 按照4小时计算

5千万/4/3600 =
3400

单机承载最大QPS (8C8G)

8G内存预留2G给系统缓冲 6GB分配给PHP-FPM

单个PHP-FPM进程 占用大约25-40M内存, 以40M计算

6 X 1024 / 40 = 150

单个机器每秒可并发处理150个请求

单个请求假设耗时0.25秒(250ms)

则单机最大秒QPS为150 X 4 =
600

需要6台机器

3400 / 600 ≈ 6

预留一台做缓冲 比如重启项目时,轮询重启,保证可提供服务的恒定有6台.

这里的6台只是nginx+php-fpm的应用服务器 数据库和缓存之类的另做计算

3台机器

Swoole4.5 + EasySwoole 重写.

架构图

欢迎友好讨论,以上为理论值.

作者:你吃饭了嘛