摘要 | 第1-4页 |
ABSTRACT | 第4-9页 |
1.绪论 | 第9-14页 |
·研究背景 | 第9-10页 |
·传统服务器模式的开发效率分析 | 第10-11页 |
·传统服务器模式的易扩展性分析 | 第11页 |
·传统服务器模式的性能分析 | 第11-12页 |
·传统服务器模式的稳定性分析 | 第12-13页 |
·本文结构 | 第13-14页 |
2 相关技术分析 | 第14-19页 |
·函数式语言的基本概念 | 第14-16页 |
·Erlang 与 OTP | 第16-17页 |
·面向对象模型和面向消息模型的比较 | 第17-19页 |
3 业务与需求分析 | 第19-23页 |
·网络服务器遇到的瓶颈问题 | 第19页 |
·处理网络并发的方法研究 | 第19-21页 |
·阻塞式单一进程 | 第19-20页 |
·阻塞式多进程 | 第20页 |
·阻塞式多进程多线程 | 第20页 |
·非阻塞式事件驱动 | 第20-21页 |
·消息模型 | 第21页 |
·功能性需求 | 第21-23页 |
4 网络消息服务器 Breath 的系统实现 | 第23-41页 |
·服务器组件概述 | 第23页 |
·系统架构图 | 第23-25页 |
·系统时序图 | 第25-26页 |
·基本实现代码组织结构 | 第26-41页 |
·网关服务器(breath_gateway) | 第26-27页 |
·应用服务器描述文件(breath_app) | 第27-28页 |
·监控树(breath_sup) | 第28-30页 |
·服务器入口(breath_server) | 第30-31页 |
·转发服务器(breath_proxy) | 第31-32页 |
·消息转发服务器(breath_postoffice) | 第32-36页 |
·房间控制器(breath_room) | 第36-38页 |
·逻辑处理模块(breath_mq) | 第38-41页 |
5 系统扩展 | 第41-49页 |
·系统扩展性的方法 | 第41页 |
·设计系统接口的方法 | 第41-43页 |
·函数调用 | 第41-42页 |
·TCP, UDP 调用 | 第42页 |
·HTTP 调用 | 第42-43页 |
·消息队列 | 第43-44页 |
·ZeromMQ 研究 | 第44-45页 |
·使用 ZeroMQ 的方法 | 第45-46页 |
·逻辑处理模块 | 第46-47页 |
·应用场景研究 | 第47-49页 |
6 与传统模式的对比分析 | 第49-66页 |
·系统运行结果 | 第49-50页 |
·传统模式的程序实现方法 | 第50-51页 |
·Python 版本的实现 | 第51-54页 |
·开发效率的对比分析 | 第54-56页 |
·容错性分析 | 第54-56页 |
·合理的抽象 | 第56页 |
·易扩展性的对比分析 | 第56-58页 |
·对操作系统的依赖小 | 第57页 |
·潜在效率巨大 | 第57-58页 |
·故障隔离方便 | 第58页 |
·扩展系统的关键技术分析 | 第58-60页 |
·系统资源的利用 | 第59页 |
·多应用服务器的架构 | 第59页 |
·网络连接会话的保存 | 第59-60页 |
·系统测试数据 | 第60-64页 |
·测试数据对比 | 第64-66页 |
7 本文工作及未来展望 | 第66-68页 |
·本文完成的主要工作 | 第66页 |
·未来的研究方向 | 第66-68页 |
参考文献 | 第68-70页 |
致谢 | 第70-71页 |
攻读学位期间发表学术论文目录 | 第71-74页 |
上海交通大学硕士学位论文答辩决议书 | 第74页 |