基于长连接的分布式消息推送系统设计与实现
摘要 | 第3-4页 |
ABSTRACT | 第4-5页 |
第一章 绪论 | 第8-13页 |
1.1 选题背景及研究意义 | 第8-9页 |
1.2 国内外现状分析 | 第9-11页 |
1.3 论文工作内容 | 第11-12页 |
1.4 论文组织结构 | 第12-13页 |
第二章 关键理论及技术介绍 | 第13-21页 |
2.1 Netty | 第13-16页 |
2.1.1 Java NIO的介绍 | 第13-14页 |
2.1.2 Netty的介绍 | 第14-16页 |
2.2 Codis | 第16-17页 |
2.3 Protocol Bufferss | 第17-18页 |
2.4 zookeeper | 第18-19页 |
2.5 TIDB | 第19-20页 |
2.6 本章小结 | 第20-21页 |
第三章 分布式消息推送系统需求分析 | 第21-26页 |
3.1 功能需求分析 | 第21-24页 |
3.1.1 新用户注册 | 第21-22页 |
3.1.2 用户路由 | 第22页 |
3.1.3 维持TCP长连接 | 第22-23页 |
3.1.4 消息状态管理 | 第23-24页 |
3.2 架构需求分析 | 第24-25页 |
3.3 本章小结 | 第25-26页 |
第四章 分布式消息推送系统的总体设计 | 第26-35页 |
4.1 系统软件架构设计 | 第26-27页 |
4.2 系统数据通信协议设计 | 第27-31页 |
4.2.1 握手协议 | 第27-28页 |
4.2.2 心跳协议 | 第28-29页 |
4.2.3 消息协议 | 第29-30页 |
4.2.4 上报协议 | 第30页 |
4.2.5 整体的协议包 | 第30-31页 |
4.3 系统安全设计 | 第31-32页 |
4.4 系统扩容缩容方案设计 | 第32页 |
4.5 系统接口设计 | 第32-35页 |
4.5.1 注册接口 | 第32-33页 |
4.5.2 注销下线接口 | 第33-34页 |
4.5.3 业务接入接口 | 第34-35页 |
第五章 分布式消息推送系统实现 | 第35-46页 |
5.1 长连接流程设计 | 第35-38页 |
5.1.1 长连接流程设计 | 第35-36页 |
5.1.2 长连接具体实现 | 第36-37页 |
5.1.3 心跳功能设计 | 第37-38页 |
5.2 路由的设计和实现 | 第38-42页 |
5.2.1 一致性哈希算法原理 | 第39-40页 |
5.2.2 一致性哈希算法实现 | 第40-42页 |
5.3 协议编解码设计与实现 | 第42-43页 |
5.4 消息推送的设计与实现 | 第43-45页 |
5.4.1 消息发送加密实现 | 第43-44页 |
5.4.2 消息推送流程 | 第44页 |
5.4.3 日志模块实现 | 第44-45页 |
5.5 本章小结 | 第45-46页 |
第六章 分布式消息推送系统测试及分析 | 第46-50页 |
6.1 测试环境 | 第46-47页 |
6.1.1 基础测试环境 | 第46页 |
6.1.2 测试软件 | 第46-47页 |
6.2 功能测试 | 第47-48页 |
6.3 性能测试 | 第48-49页 |
6.4 本章小结 | 第49-50页 |
第七章 总结和展望 | 第50-52页 |
7.1 论文工作总结 | 第50页 |
7.2 后续工作展望 | 第50-52页 |
致谢 | 第52-53页 |
参考文献 | 第53-55页 |
攻读学位期间参加科研情况及获得的学术成果 | 第55-56页 |