你好,欢迎来到经管之家 [登录] [注册]

设为首页 | 经管之家首页 | 收藏本站

关于开放性SaaS平台的研究_硕士论文

发布时间:2014-05-28 来源:人大经济论坛
1. 引言 SaaS(Software as a Service)软件的出现是互联网发展到一定阶段的必然产物,网络覆盖的广泛性,网络带宽的不断提升,互联网一系列量变因素积累到一定程度就产生了质变,SaaS 也因此而诞生。从SaaS 商业模式来看,SaaS 软件盈利的关键是服务的低成本和用户数量之间的平衡,低成本是SaaS 软件的最大优势,但光低成本并不能发挥SaaS 的最大效益。 拥有大量客户群的SaaS 软件商纷纷打造自己的SaaS 运营平台,把自己掌握的客户资源开放给第三方软件厂商,丰富SaaS 平台服务的全面性,最大程度的发挥长尾理论效应[4]。 现有的SaaS 平台仅提供一个服务信息发布的平台,并没有真正意义的将服务集成到平台,服务的应用仍就是SaaS 软件的使用,并非是平台级的应用。因此,本文从Web 服务统一集成调用的两个关键——WSDL、SOAP 的生成以及服务配置信息数据模型探讨平台服务集成能力的提升。 2. 平台的基本结构 SaaS 平台作为纽带联系着服务提供和消费的两端,从服务消费用户来看,平台应提供一个查找、应用服务的机制,一系列有效、可靠、实用的服务描述信息(包括服务的功能、消费条件、服务质量等)作为服务消费的依据。从服务提供者来看,平台应提供注册、管理服务的机制、服务安全保障机制以及服务收费机制。总之,从最后表现形式看,平台架构三层B/S 体系结构:表现层、中间层、持久层,以服务为中心的统一描述、发现、调用、集成机制(Universal Description,Call and Integration)UDCI。 UDCI 表现层统一管理同平台同用户之间的交互,包括:服务提供用户的服务注册发布以及服务管理、服务消费用户的服务查找以及服务定购、用户同平台交互的访问权限控制。 UDCI中间层完成服务的动态的调用,动态解析服务应用请求以及服务应用响应。为了尽可能减少数据在网络中的传输,提高服务应用响应速度,采用MapReduce分布式计算模型,同时建立SOAP处理器和WSDL动态解析器以保证服务集成时的通用性。 UDCI持久层是服务信息数据中心,包括服务配置、付费机制信息、服务质量信息、服务WSDL文件、服务本地集成文件等。传统的编程模式和数据结构要么无法满足高可配置性和通用性要求,要么导致数据大量在网络间传输,影响服务应用响应速度,因此,这里采用开源的HDFS分布式文件系统和基于列分布式数据库HBase。 3. SaaS 平台UDCI 架构及实现 3.1 用户交互层 根据用户类型的不同把该层分为两部分:最终用户交互中心和服务提供用户交互中心。 最终用户交互中心处理服务的查询添加、服务应用访问认证及服务应用相应界面的动态生成,任何服务的应用首先通过查询添加取得服务,然后通过访问认证的验证,取得授权,方可进行下一步的应用,取得授权后生成相应界面对所选服务动态应用。服务提供用户交互中心处理服务提供商服务注册发布、服务配置及服务必要文件的上传。 3.2 服务动态解析层 服务应用[1]最终体现的形式为SOAP 消息的交换,这就SOAP 消息生成及解析形式具有很好的灵活性和通用性,为此服务中介规划为两大部分: WSDL 动态解析器、SOAP 消息生成解析器。任何服务应用访问都必须得到平台的访问认证,通过WSDL 动态解析器解析WSDL来解析和生成服务应用的SOAP 消息,使SOAP 消息具有更强的可通用性、可移植性。 WSDL动态解析的困难[2]在于自动解析和提取WSDL文档中的types元素所包含的作为SOAP程序输入和输出参数的原子的数据类型,本文利用DOM(DOM- Document Object Model)使用递归的方法在内存中构建元素树进行输出和输入元素的自动提取工作。之所以选择DOM,是因为DOM采用树模型解析XML文档,能够很好地表现types元素所定义的数据类型的递归特征。DOM解析器可以遍历文档树并访问所需要的数据元素。DOM解析器读入整个WSDL文档,构建一个驻留内存的树结构,然后使用DOM接口来操作这个树结构。具体解析算法[6]:①确定是否是element元素;②判断此元素是原子类型的元素还是复杂类型的元素;③如果属于复杂类型的元素,则判断此元素是简单类型的扩展还是复杂类型的扩展;④按照简单或复杂类型的数据元素进行相应处理;⑤如果处理到的元素不是原子类型,则进行递归解析,最终得到SOAP消息生成和解析所需要参数的定义信息。
经管之家“学道会”小程序
  • 扫码加入“考研学习笔记群”
推荐阅读
经济学相关文章
标签云
经管之家精彩文章推荐