1.3.2.1 Web服务发现
随着Internet的快速发展,Web服务的数量和种类也得到了快速增长,如何准确、快速地搜索到满足用户需求的Web服务已经成为当前研究的重点。不同的Web服务可能具有不同的内容、形式和复杂程度。传统的Web服务发现方式(如通用描述、发现与集成服务)不能表示服务的语义信息,并且UDDI的关键字匹配过程不能完全展现Web服务的能力,造成服务发现的准确率和召回率较低[20]。如何对Web服务进行描述和组织,使请求者能够基于概率或语义约束的模糊匹配进行查找,实现服务发现的高效性、自动化和智能化,是Web服务研究的一个重要内容[21]。
1.3.2.2 Web服务组合
在业务处理中,通常需要按照一定粒度将多个Web服务根据特定的应用背景和需求进行合理的组合,实现完整的业务逻辑。以往的大量研究主要集中于需求明确、业务流程可预先定义的服务组合应用场景。然而,近年来人们逐渐认识到:在科研协作、远程医疗、城市应急等应用领域问题求解的过程中,许多业务流程难以预先定义完备,需要根据周围环境、已完成业务活动的结果和效果等实时、实地确定下一步要做的事。这种具有“边执行边探索”“摸着石头过河”特征的服务组合被称为探索式服务组合[22]。在探索式服务组合环境下,用户可能面临两方面问题:一方面,用户需求不明确,往往只有大概的方向。另一方面,用户对服务系统中庞大复杂的功能服务也不十分了解。探索式服务组合,作为一种典型的半自动服务组合方式,特别需要主动智能的服务推荐技术来提升用户体验,缓解供需矛盾。用户根据自身需求可以通过服务搜索找到初始服务,而初始服务的组合服务推荐效果不如后继服务准确、高效。然而,目前的服务推荐方法大都只考虑了初始服务的推荐,对后继服务的推荐关注较少,因而不适用于探索式服务组合场景中的推荐。
同时,Web服务组合还面临下列问题[23]:①对于与组合服务相关的各服务组件和基本服务,怎样定义它们之间的逻辑及时序关系,以实现复杂Web服务执行的自动化;②怎样实现服务组件和基本服务之间的动态交互、协调及状态保持,以保证Web服务执行的有序性;③怎样保持语义信息,怎样验证和测试组合Web服务,以确保Web服务执行结果的准确性。
近年来,随着云计算、物联网等技术研究不断深入,大数据时代已经到来,这必将加速服务组合从理论研究走向现实应用的过程,如何提供高效、准确的服务组合方法已成为促进服务组合发展的关键因素。
1.3.2.3 Web服务监控
随着Web服务被以电子商务为代表的现代企业所广泛应用,出现了越来越多的Web应用和服务,Web应用的组成也日趋复杂化。用户对服务质量的要求也越来越高。与此同时,服务提供者为了提高Web服务产品竞争力,不仅需要开发高质量的服务,而且需要及时获知已上线服务的运行状态[24]。因为,服务提供者需要时刻为用户提供高质量的服务,一旦出现服务异常则会在很大程度上影响用户的体验。服务提供者需要对Web服务的运行状态进行实时监控,以最快速度发现服务的异常情况并及时处理。因此,如何实时准确地监测Web服务的运行状态,是服务保障的重要环节。
目前,由于网络上的Web服务数量急剧增加,组合服务进程规模不断扩大,使得在满足业务需求的同时,组合进程的复杂性也在不断提高,且对服务组合的可用性、可靠性以及它的容错能力提出了相当大的挑战[25]。除此之外,网络环境的动态变化、非预期的网络失效以及其他各种外部问题也会使服务在组合过程中受到影响。以上这些不确定因素导致服务组合在运行过程中会出现各种故障,而由于服务之间的互操作会使得这些故障在服务间不断累积和传播,这就让服务组合的故障问题更加突出[26]。因此,如何从大规模分布式系统中发现并移除故障,以保证组合进程的正常运行[27],已经成为一个亟待解决的重要问题。
因此服务监测、诊断是Web服务管理的核心问题,需要建立服务组合的故障诊断模型来对服务组合发生故障的位置及原因进行诊断,并制定有价值的诊断策略以保证诊断的效率和准确性。
1.3.2.4 Web服务性能优化
由于Web服务成了主流技术,其性能引起了广泛关注。Web服务技术建立在XML技术的基础之上,XML本身的特点及其他一些因素对服务性能造成了一定影响,导致Web服务技术与其他分布式技术相比在性能上有一定的差距[28]。XML和SOAP使Web服务具有更好的开放性,但XML的解析和传输等使Web服务与CORBA等调用相比,性能上存在数量级上的差距,这将直接影响Web服务的应用和推广[21]。(www.xing528.com)
随着电子商务的迅速崛起,基于Web的应用模式迅速发展,Web应用从局部化发展到全球化,从集中式发展到分布式,Web服务成为电子商务的有效解决方案。电子商务由于其交易的实时性等特点,要求基于Web服务的电子商务系统具有较高的性能,因此服务性能就成为决定Web服务是否能进一步得到广泛应用的关键因素之一。针对这一点,业界提出了SOAP消息传输优化方案、XML二进制优化建议等。如何对XML的解析、SOAP消息的传输进行优化,是提高SOAP可用性的一个重要方面。
1.3.2.5 Web服务的安全性
为了保证Internet上Web应用的安全,防止信息被非法访问和修改,需要采用安全控制或信息加密等手段。现有的安全技术如数字签名、XML加密标准、访问控制技术等,一定程度上解决了特定的安全问题,但如何实现Web服务安全保护的自动化,保证不同粒度和级别的数据机密性、完整性和可用性,仍然是一个重要的研究问题[21]。Web服务安全涵盖的内容比较多,主要包括对用户的认证、授权,事务的审计,服务的可用性,所交换消息的保密性和完整性,请求或消息的不可否认性等方面。
当前国外对Web服务安全问题的研究大部分集中在制定Web服务安全性规范及对应规范的实现。WS-Security、WS-Trust等规范提供了一个框架级别的安全标准,但还需要在应用中进一步验证。国内对Web服务安全性的研究大部分集中在对各种安全协议的使用、检测程序应用漏洞、用传统信息安全评估标准对Web服务进行安全评估。由于国内外对Web服务安全性的研究主要集中在如何制定和实现Web服务安全协议,开发Web服务漏洞扫描工具,以及分析和跟踪Web服务安全性规范方面,而对如何客观、科学地评估安全的研究比较缺乏,因此对Web服务安全性进行测试和评估是非常重要和必要的[23]。
1.3.2.6 Web服务的事务机制
由于Web服务组合面对的是广域分布的、异构的、动态的环境,而且涉及多个自治组织间的协作与交互,因此用一个工作流程来描述整个业务过程是不可能的,需要涉及多个组织的流程之间的互操作。在Web服务组合中,常常需要处理多个成员与Web服务之间的交互和组合过程,这类过程必须保证多个Web服务运行结果的可靠性和一致性,并能及时解决运行时发生的各种异常[29]。因此,为了保证Web应用协同工作并保持一致,得到可靠的结果和输出,在Web服务组合处理环境中需要为Web服务组合提供事务处理技术的支持,建立适应其特点的事务模型。
传统的事务处理技术适合紧耦合和短生命周期的事务,Web服务组合应用的事务运行在松耦合的环境中,事务的参加者可能属于不同的、自治的组织和部门,具有较长的生命周期。总之,与传统事务相比,Web服务中的事务机制具有下列特点[21]:①事务的执行周期可能很长;②Web事务比传统事务更松散、更灵活、更复杂,并不严格地遵循传统事务ACID(Atomicity,原子性;Consistency,一致性;Isolation,隔离性;Durability,持久性)原则;③事务参与者可能分布在网络中不同位置、不同平台上;④服务组合中需要事务机制来保证其协调工作。
目前,Web服务支持的事务模型主要是Business Transaction(业务事务)、WS-Transaction(Web服务事务)和Activit Service,其策略通常是扩展已存在的事务处理技术,其实效性仍然有待进一步研究。现存的Web服务事务处理协议有BTP(Business Transaction Protocol,商业交易协议)、WS-Coordination(Web服务协调)、WS-Transaction和WS-CAF(Web Services Composite Application Framework,Web服务组合应用框架)等规范,这些规范不同程度地对传统事务进行了改善,重新定义了松耦合环境的事务特性。但对于Web服务组合事务缺少良好的支持,尤其是在组合事务逻辑复杂的情况下,这些协议不能有效地解决问题。
1.3.2.7 云计算平台下的Web服务组合
随着云计算的发展与普及,云服务已经成为热门的商业模式。由于云计算易于对数据提取、整合和应用,并且可以按需求给组织提供最新信息技术资源和服务,所以越来越多的组织选择云服务[30]。然而,一些组织对云服务的安全性、隐私性和可用性十分关注,对云服务供应商的可信度产生怀疑[31]。不仅如此,近年来涌现出大量的云服务供应商,且他们所提供的服务极具相似性[27],大部分人并不知道如何筛选出可靠的云服务供应商。再者,由于云服务市场动态性极强,对云服务供应商进行评估时,定性指标难以描述且指标之间关系复杂,这使人们在选择可信度高的云服务供应商时变得困难[32]。
Web服务技术在各研究方向中还存在一些问题。例如:如何对Web服务进行描述和组织,使请求者能够基于概率或语义约束的模糊匹配进行查找,实现服务发现的高效性、自动化和智能化;对于与组合服务相关的各服务组件和基本服务,怎样定义它们之间的逻辑及时序关系,以实现复杂Web服务执行的自动化;怎样实现服务组件和基本服务之间的动态交互、协调及状态保持,以保证Web服务执行的有序性;怎样保持语义信息,怎样验证和测试组合Web服务,以确保Web服务执行结果的正确性;如何实现Web服务安全保护的自动化,保证不同粒度和级别的数据机密性、完整性和可用性……这些问题都是Web服务技术在研究中需要解决的问题,也就成了Web服务技术下一步的发展趋势。特别是,由于传统的Web服务技术缺乏机器可理解的语义,限制了Web服务的自动化,如何使Web信息为机器所理解并自动处理成为Web服务发展的趋势。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。