论文部分内容阅读
互联网从诞生到现在经过飞速的发展,已经成为了我们日常生活中不可或缺的一部分,伴随着互联网的发展,Web服务也越来越被人们所熟知。同时,云计算从其诞生到如今也已经从学术界理论走向了工业届的大规模实践中,成为了一项广泛了利用的技术,Web服务也在云计算中得到了大量的应用。本文基于实验室现有云平台,设计并实现了一套RESTful Web服务系统。首先,本文分析了现有云平台存在的问题。现有云平台中的后台服务中提供了 Web云桌面后台服务,云平台管理服务,SOAP Web服务以及Socket等各种服务。但其存在架构之间层级分工不明确,服务的耦合度高等问题,并且随着云平台用户量的增加,对于系统请求的响应速度也要求得到提升。在此基础上提出了对本文设计的RESTful Web服务系统的需求,一方面需要将现有云平台架构优化,整合并重新实现相关功能;另一方面需要提高系统的并发处理能力,降低请求的响应时间。根据这些需求,进一步提出了系统的总体架构设计:包括底层服务器,网络接口模块,验证模块以及中间件模块。接着,对RESTful Web服务系统进行了详细的设计和实现。底层服务器模块中采用Node.js技术提高并发请求处理能力,并针对其单线程运行机制而不能充分利用多核服务器性能的不足,本文设计并实现了更合适、简洁的多核Node服务器。另一方面,在整个系统的设计与实现中引入了 REST架构约束思想,其中包括系统架构前后端分离的具体设计,请求和响应以及统一风格的API的重新设计和实现,采用JSON Token的认证方式保证无状态性等。最终使得各个终端服务可以构建在同一套RESTful Web服务之上,降低了现有云平台的复杂度,层级关系明确并具有更好的扩展性。同时,通过中间件模块使得架构更加清晰合理。其中数据中间件采用ORM模型设计并实现了数据库DAO接口层,服务中间件对必要的底层服务进行封装保证业务功能的实现。最后,对RESTful Web服务系统进行了测试。其中包括将本文实现的多核Node服务器与现有多核解决方案和Apache服务器进行性能对比测试,验证其满足提升并发处理能力的需求;对RESTful Web服务系统进行功能测试,通过对业务功能的正确性以及REST架构约束是否满足的验证,判断RESTful Web服务系统的各个模块是否正确实现并符合要求。