摘要 | 第4-5页 |
Abstract | 第5页 |
1 绪论 | 第9-19页 |
1.1 推送系统概述 | 第9-13页 |
1.1.1 推送系统现状 | 第9-10页 |
1.1.2 实现推送的几种方案及其比较 | 第10-11页 |
1.1.3 基于长连接方式推送的工作原理 | 第11-12页 |
1.1.4 Android客户端的定时策略与电量消耗 | 第12-13页 |
1.1.5 AndroidPn开源项目的优点和缺点分析 | 第13页 |
1.2 Java NIO概述 | 第13-17页 |
1.2.1 网络IO模型及Java NIO的工作原理简介 | 第14-15页 |
1.2.2 MINA框架的工作原理 | 第15-16页 |
1.2.3 MINA中多路分离解码器的作用 | 第16-17页 |
1.3 分布式系统概述 | 第17-19页 |
1.3.1 RMI简介 | 第17-18页 |
1.3.2 RMI工作原理 | 第18-19页 |
2 推送系统需求分析 | 第19-27页 |
2.1 推送系统功能需求分析 | 第19-22页 |
2.1.1 客户端SDK功能需求分析 | 第19-20页 |
2.1.2 推送服务子系统功能需求分析 | 第20-21页 |
2.1.3 推送管理子系统功能需求分析 | 第21-22页 |
2.1.4 服务器端SDK功能需求分析 | 第22页 |
2.2 推送系统数据流分析 | 第22-24页 |
2.3 推送系统性能需求分析 | 第24-25页 |
2.3.1 可靠性 | 第24页 |
2.3.2 及时性 | 第24页 |
2.3.3 可伸缩性 | 第24-25页 |
2.3.4 可维护性 | 第25页 |
2.4 推送系统开发环境需求分析 | 第25-27页 |
3 推送系统概要设计 | 第27-33页 |
3.1 推送系统架构设计 | 第27-29页 |
3.2 推送系统功能模块设计 | 第29-30页 |
3.3 推送系统模型设计 | 第30-31页 |
3.4 推送系统数据库设计 | 第31-33页 |
4 推送系统详细设计 | 第33-48页 |
4.1 客户端SDK模块详细设计 | 第33-37页 |
4.1.1 长连接维持模块设计 | 第33-34页 |
4.1.2 唤醒连接模块设计 | 第34-35页 |
4.1.3 协议编解码模块设计 | 第35-37页 |
4.2 推送服务子系统详细设计 | 第37-41页 |
4.2.1 在线用户管理模块设计 | 第37-40页 |
4.2.2 程服务模块设计 | 第40-41页 |
4.3 推送管理子系统详细设计 | 第41-48页 |
4.3.1 模型设计 | 第42-43页 |
4.3.2 持久层设计 | 第43-45页 |
4.3.3 业务层设计 | 第45-46页 |
4.3.4 控制层设计 | 第46-48页 |
5 推送系统实现与测试 | 第48-62页 |
5.1 客户端SDK的实现 | 第48-51页 |
5.1.1 长连接维持模块的实现 | 第48-49页 |
5.1.2 唤醒连接模块的实现 | 第49页 |
5.1.3 协议编解码模块的实现 | 第49-51页 |
5.2 推送服务子系统的实现 | 第51-54页 |
5.2.1 在线用户管理模块的实现 | 第52-53页 |
5.2.2 远程服务模块的实现 | 第53-54页 |
5.3 推送管理子系统的实现 | 第54-58页 |
5.3.1 持久层的实现 | 第54-56页 |
5.3.2 业务层的实现 | 第56页 |
5.3.3 控制层的实现 | 第56-57页 |
5.3.4 界面展示 | 第57-58页 |
5.4 推送系统的测试 | 第58-62页 |
5.4.1 测试介绍 | 第58-59页 |
5.4.2 单元测试结果 | 第59页 |
5.4.3 并发测试结果 | 第59-62页 |
结论 | 第62-63页 |
参考文献 | 第63-64页 |
致谢 | 第64-65页 |