买了五兆带宽的机器,运营问能同时支持多少人访问,答不上来,上线活动时又怕带宽被瞬间打满。

把日志和配置对完,能解释这个现象的基本就这几处。并发能力取决于单请求体积而不是人数;首屏资源多,实际传输量远大于页面大小;图片和静态资源没有走缓存或者对象存储。

测单个页面的传输体积

curl -o /dev/null -s -w '%{size_download}\n' https://example.com/

然后换算理论并发数

echo $((5*1024/200))

再往下确认静态资源是否压缩

curl -I -H 'Accept-Encoding: gzip' https://example.com/app.js

剩下的就是把静态资源迁到对象存储

grep -rn 'cdn' /etc/nginx/conf.d/

这类改动我都写进变更记录,过两周再出问题时能对上号。

别只看报错消失,验证要多做一步。活动期间带宽峰值留有余量,首屏加载时间稳定,没有出现大面积超时。

这里还有个坑。理论并发只是参考值,真实场景还要算上连接建立和重传;上活动前压测一次比算公式更靠谱。线上能稳定复现的问题都不算难,难的是只在大流量下才出现的那种。

作者 9823189