论文部分内容阅读
云计算的理念体现在资源和应用功能的云端服务化,随着信息技术的发展,SaaS(Software-as-a-Service)服务模式逐渐得到软件市场的认可。然而,SaaS应用在其定制性、安全性和数据存储模式上仍存在诸多问题,尤其当与大量租户的个性化业务相结合时,更是为软件提供商带来很大的挑战。一套完整的SaaS解决方案离不开云计算底层技术的支撑,Docker是近两年来出现的新一代容器技术,其提供涉及 IaaS(Infrastructure-as-a-Service)层和 PaaS(Platform-as-a-Service)层的服务并可与它们整合。Docker的“集装箱化”理念以及“面向应用”的功能给云计算技术领域带来了意义重大的变革。本文从应用角度出发,结合实际项目“企业项目资金管理系统”将传统的应用SaaS化,对SaaS应用容器化。设计并实现企业项目资金管理系统的同时提供基于Docker容器的SaaS模式解决方案。课题首先深入研究了云计算技术架构和Docker原理,分析传统软件和SaaS软件各自优缺点。基于Java Web等技术实现项目资金管理系统的各个业务模块的应用开发,包括用户管理、租户管理、项目管理、资金管理、文件管理、统计分析和配置扩展服务。在数据层的核心问题数据扩展技术上提出了独立扩展模块,实现了租户扩展数据的独立。在后端业务逻辑增加业务接口配置层,为多个租户提供灵活的业务接口。同时支撑应用的云平台上利用Docker容器技术构建各层镜像和容器,结合Jenkins自动构建工具和Git项目管理实现自动化持续构建的平台。最后对应用系统进行测试和监控,做出结果分析。基于Docker容器的SaaS模式云平台的研究与设计提供了从软件开发到软件部署的一套解决方案。其中,SaaS改变了用户与软件提供商的软件提供方式,Docker改变了传统开发、部署和运维模式,Jenkins体现出持续集成和持续交付的理念,独立数据扩展模块和业务接口配置层的设计提高了应用的灵活性和数据的安全性,多租户多容器实例提高了资源隔离效果,最终体现出基于Docker容器的新一代云计算技术服务。