前阵子被股东们问到了消息推送平台Austin接口性能相关的问题,本来想着早早就可以安排一波文章的。实在没想到这两周竟然在工作中出现了这么多线上的问题,熬了几天夜,导致文章拖到了现在。
消息推送平台提会供接口给业务方进行调用,一般面试官看到了也会想问:「你这接口有多少的QPS?RT是多少?有压测过吗?业务增长,调用接口的量也在增长,这时候你会怎么办?」
对于这个问题,我提供下思路哈,你们可以根据自身技术栈的情况做一些简单修整。
聊些指标和系统业务/架构
我们的QPS和RT的指标都来源于日志,我们在接口被调用时打印出了耗时(RT)以及记录了一条日志(QPS)。有了这日志,我们通过GrayLog就能配置出QPS和RT的监控了。所以,我们的接口对QPS和RT都是有监控的哈
在接入层部署了4台4C8G的机器,通过监控可以看到,日常的QPS大概百级(200左右),大促时记录的峰值是2000,RT大概在20ms。
发送接口是提供了单发和批量接口的。如果有批量推送消息的需求,我们这边是建议业务走批量接口的&