来源:卢兴民
链接:zhihu.com/question/509914161/answer/2299099095
版权申明:内容来源网络,版权归原创者所有。除非无法确认,我们都会标明作者及出处,如有侵权烦请告知,我们会立即删除并表示歉意。谢谢!
往期惊喜:
妙用Java 8中的 Function接口 消灭if...else(非常新颖的写法)
扫码关注我们的Java架构师技术
带你全面深入Java
大家好,我是Java架构师
看一波西安健康码的接口数据。
真正的二维码数据是 /person/app/refreshQRCode这个接口
看下这个接口返回,设计上也没有太大的问题。所以这些都不是导致西安二维码爆的原因了。关注Java架构师技术
主要问题集中在所有的js/css/img这些静态资源全都从从一个出口进行提供,没上CDN粗略估算了一下,js/css/img数据总共约500kB按照从某个群里得到的数据,暂且认为是准的,健康码的请求量峰值达到了3.3w qps
那按照这个量估计 33000 x 500 x 8 bps ≈ 125Gbps 这个出口量级很难用单机房承载,峰值一来,出口网卡打满,直接gg。刚刚,微信官宣1000W个微信红包封面,速度撸!!
到写这个回答时,西安健康码还是没有将静态资源上CDN,之后看看访问量再起飞的时候,能不能扛得住吧。
最后再补充一点,这应用只是其中一个原因。不排除后端和数据库缓存也有更大的问题。
最后,整理了100多套项目,赠送读者。扫码下方二维码,后台回复【赚钱】即可获取。
--END--