论文部分内容阅读
随着互联网的蓬勃发展,日益增大的访问量和用户不断变化增加的需求给Web后台开发带来了越来越大的压力。随着项目的增大,后台工程内部各个功能子模块之间耦合关系便无可避免的越来越紧,其严重的影响开发、测试、运维等工作。针对这个问题,当前主流的解决思路是参考服务化的理念,将整个后台系统按照功能拆分成多个子功能模块。近些年业界提出了微服务的概念,其提出了对单个服务使用容器封装操作管理的完整一栈式解决方案。在此环境之下,为了解决传统Web后台开发中的各种问题,也为了汲取服务化和微服务各自优点并修正解决其缺点,本文尝试将服务化和微服务的思想理念结合并在此基础上提出一套微服务化的后台架构方案。首先,本文深入剖析了分布式服务化系统开发中需要解决的问题,介绍并分析了当前业界服务化的开源解决方案的以及基于ZooKeeper的二次开发相比于其他方案的优势,微服务的基本概念以及相关实现工具Docker的基本知识。同时,本文还详细介绍了 Flume,Shiro,Gradle等构建子服务模块开源组件的基本知识。其次,本文以Gradle为项目构建工具搭建基于SpringMVC的基础Web框架并在此框架上开发基于Shiro的权限管理子系统和基于Flume的日志功能子系统以及基于ZooKeeper的服务中心子系统并完成基于微服务化的后台系统的开发。最后,本文将开发好的基于微服务化的后台系统集成进“中国移动业务支撑系统信息模型测试平台”中,在验证实际系统的健全性和可集成性后,通过对基于微服务化的架构方案的系统和传统Web系统在并发承载量,内存消耗以及响应速度上进行对比测试以验证新架构方案的性能优越性。综上所述,本文旨在提出一种基于微服务化的后台设计架构方案,并提出公共模块子系统(日志,权限)以及业务子系统的设计方案与测试方案。该方案被应用到中国移动业务支撑系统信息模型测试平台的开发和测试中,并最终对在实际生产环境中以新架构方案为基础的工程进行功能和性能测试,通过架构优化前后功能的可用性的测试和性能的对比,得出了该方案的有效性和正确性。