前言
<< 分布式消息推送系统 >>
- 如何保证消息的可靠性 ?
- 如何实现消息的实时性 ?
- 如何维护连接状态 ?
- 如何维护客户端路由器 ?
- 如何适配异地多活系统 ?
- 如何实现消息重试 ?
- 如何实现离线消息 ?
- 如何使用raw epoll替换netpoll实现接入服务 ?
- 如何分布式压测 ?
- 如何做到全方位指标的可观测性 ?
- 通过二级缓存减少时延
- golang在推送系统中的优化
- golang在推送系统中的编码技巧
现在公司的峰值客户端稳定在 40w 个, 突发情况可能在 45w 左右. 这么大的量线上肯定采用集群式部署, 足足有10台高性能主机, 虽然跟其他服务是混部模式,但每个节点无需承载太多的流量, 推送服务本身也有过载保护机制,每个主机最多被调度到10w条连接。听着这部署规模是稳妥的. 但作为一个优秀的程序员,我们依旧想让推送系统有更好的性能,保证单个服务最少可以抗30w的连接.
有时间再补充每页ppt内容,很多时候知道我没时间补充文稿,所以尽量用图片代替文字来描述枯燥的内容。
如果 ppt 中有你不理解的地方,大家可以到 https://github.com/rfyiamcool/share_ppt 这里提问题 issue .
内容
按照演讲目录来说,分了几块内容.
- 什么是推送系统
- 推送系统的架构
- 性能调优
- 压力测试
- 运维部署
地址
完整 ppt 的下载地址 :
记得点 github star 哈 …
截图预览
ppt 的页数有 50 页,只是传了部分的预览图,想看完整的 ppt 可以到github中看。