微信12亿用户, 其中10亿在中国, 我们就算中国这几亿请求是怎么计算的呢, 假设中国10亿网民全安装了微信, 而且微信24小时联网. 非活跃用户每三秒拉取一次消息, 光查询消息就产生了28800次请求. 按每天每人平均使用微信30分钟, 发送30条消息, 阅读100条朋友圈, 5篇长文. 聊天产生100次请求, 朋友圈产生200次. 长文产生50次. cdn请求不算在内. 这样每个用户每天大约是3万次请求. 大约每3秒一个请求. 10亿用户每秒3.3亿个请求.
3.3亿QPS按每个请求200毫秒响应时间保守估计(其实大部分消息都不会离开本地机房), 并发量是3.3亿 * 0.2 = 6.6万个pod, 假设每个pod要8 vcpu, 8g内存, 如果每台服务器可以启8个pod, 需要8千多台服务器处理消息查询.
按大家每天睡眠8小时, 在剩余的8 * 60 * 60 = 57600秒随机使用微信, 平均每秒有17361人在用微信, 峰值乘以3倍吧, 就算大约5万长连接. 每个pod按1000并发保守估计, 需要50个pod处理实时聊天.