一种面向SaaS应用开发的中间件设计与实现

来源 :北京邮电大学 | 被引量 : 5次 | 上传用户:sallen009
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
自SaaS(Software as a service,软件即服务)的概念提出以来,国内外涌现出大量基于SaaS模式的通用管理软件产品及其服务,并占据一定的中小企业市场。站在用户的角度来说,基于SaaS模式的应用可谓是数不胜数,而站在开发者的角度,目前的SaaS服务数量与日俱增,如果每开发一个SaaS应用都要一份SaaS解决方案的代码拷贝,显然是低效的。针对上述因素,本文选题自北京邮电大学青年科研创新计划专项“开放移动资产管理示范平台”,研究一个面向SaaS应用的开放性服务中间件,它不考虑软件的业务逻辑,而是专注于实现SaaS模式的固有特性,这样,开发者只需调用对外开放的接口,便可以快速构建和部署一个可扩展、可配置和成本高效的SaaS应用,解决项目中SaaS模式改造的难题,大大节约了开发周期和成本。论文的研究工作主要体现在一下几个方面:首先,深入分析了SaaS模式下成熟度模型和软件架构,研究SaaS模式的关键技术及应用特性,从应用系统构建的角度设计了一个符合第三方开发者的需求的SaaS中间件软件架构。然后总结了面向SaaS的中间件需要解决的数据隔离和过滤、数据扩展、功能可配置和页面可配置等几个关键问题,从用户定制层、应用服务层和数据服务层三个层面对关键问题提出了相应的技术实施方案,帮助第三方开发者实现SaaS解决方案,实现了一个可以供第三方开发者调用的中间件。最后,本文基于面向构件的思想,采用SCA完成了接口的设计和封装,并对外发布为Web Service,降低了子模块之间的耦合性,隐藏了服务实现的细节。论文的主要贡献为:针对多租户数据架构模块,采用共享数据库/隔离数据架构和共享数据库/共享数据架构两种隔离方案供开发者自由选择,并提出一种Schema切换和存储过程相结合的方案实现隔离数据架构下的用户访问机制,并采用享元模式避免大用户量情况下数据连接池过多导致系统性能低下的问题。针对数据扩展模块,提出一种基于XML的公共表扩展方案,满足了用户的数据无限扩展的需求,避免了对原有表结构的破坏和数据检索时表连接查询过多的问题。针对功能可扩展模块,提出一种面向切面的功能验证方案,使得开发者不用修改原有代码只需进行一定的配置即可完成租户的功能验证需求。为了更好地验证中间件的可行性,论文将中间件应用于开放移动资产管理示范平台,验证了接口的可用性。
其他文献
随着工业控制网络朝着生产高度数字化、网络化、机器自组织的方向发展。在生产效率提高的同时,越来越多的安全风险和安全漏洞被暴露出来。尤其在工业控制网络层,作为工业控制
步入21世纪以来,移动无线通信技术以及智能终端技术得到迅速发展,人们对更便捷、更高效、更高容量的无线网络的要求不断提高。无线多跳网络(无线Ad Hoc网络、无线mesh网络、
随着军队及通信台站装备技术、管理理念和管理方法的不断发展,目前所实行的各类法规制度逐渐暴露出一些缺陷,如缺少人员管理指标及量化标准等、缺乏过程监管、缺乏评估手段、缺乏信息化平台,等等。因此,建立一套以信息网络为支撑,结构一体、数据共享的综合管理体系非常必要。本文旨在通过分析目前台站所面临的管理问题及衍生出来的实际需求,给出一种基于B/S结构的基层台站量化考评管理系统。该系统以现有的法规制度为依据,
我们处于一个信息极其丰富的时代,人们对于快速准确地获取信息产生极大的需求。搜索引擎以其使用方便、反应迅捷而备受人们欢迎,成为信息获取的最主要方式。然而搜索引擎以关
随着计算机、数据库和网络信息技术的蓬勃发展及广泛应用,越来越多的数据在网络中被公开发布。数据挖掘等诸多技术的进步帮助了人们有效地利用发布数据,从海量信息中抽取出潜在
蛋白质相互作用(Protein-Protein Interaction,PPI)网络是指一个生命有机体内所有蛋白质之间相互作用组成的生物分子关系网络。利用计算方法进行PPI网络功能模块检测是后基因
随着云计算的迅猛发展和IT服务的专业化,单个云服务不能很好的满足用户多样化的个性需求,因而云服务组合问题得到广泛的关注。在云服务组合过程中,由于云服务组件经常具有不
翻译检索被认为是机器翻译与信息检索技术的结合。机器翻译讨论如何用计算机将一种自然语言翻译为另一种自然语言。信息检索返回与用户查询相关的文档信息。传统翻译检索方法
自2006年被首次提出以来,云计算已经成为IT行业中的持续性热点,它具有很高的商业价值。由谷歌提出的MapReduce云计算编程模型针对大数据集实现自动的并行和分布式计算,性能高且