移动对SOA的影响:令app受益匪浅

日期: 2013-05-06 作者:Tom Nolle翻译:boxi 来源:TechTarget中国 英文

iPhone等智能设备引发的app革命证明,移动宽带对大家访问和使用在线资源产生了深远影响。因此,询问移动宽带将如何从总体上影响应用开发,尤其是SOA就是合情合理的了。

  将SOA作为移动影响的关注目标,其原因是:移动用户的在线使用是高度分化的。传统的计算机用户上网冲浪是为了寻找东西,而移动用户则是使用app。就结构而言,此类app是屏幕图标、部分可选的本地处理程序与URL之间的一个连接。在许多情况下,app与在线服务的映射是1:1的关系,这是SOA这种类型的服务组件化的目标。  

RESTful Web服务的情况如何?

  表面上看,似乎所有的移动应用都促进了SOA,但是这种说法过于简单化了。总的说来,互联网革命尤其是移动互联网应用,已经创立了一种给予表述性状态转移(REST)的“Web服务”模式,即所谓的RESTful接口。REST创立了一种从某种程度上与SOA类似,但是在别的地方又迥异的“即服务”模式。

  RESTful接口代表无状态事件/响应处理。这意味着每个事件均在自己的上下文中进行处理;服务并不会去记住此前做了什么。这使得将RESTful服务扩充至互联网级别也很简单,但是被放置进逻辑序列的、涉及多服务的任务则需要其他东西来协调——一般是提出请求的设备。HTML页面就是调用RESTful接口的脚本。在SOA中,大多数实践者均认为无状态的要求是没那么严格的,SOA在服务总线或工作流引擎中也有一套隐含的协调模式—即将SOA组件与应用关联起来的消息交换,这种消息交换是通过结构化的方式将消息线程化来实现的。

  RESTful接口也更加简单。在许多情况下,这些接口就是某些最小化数据结构的简单HTTP GET及POST消息交换,或者是XML格式的负载。如果有必要的话,通过HTTPS提供安全性。在SOA中,基于XML的Web服务描述语言(WSDL)、简单对象访问协议(SOAP)以及一系列的支持协议(“WS-标准系列”)提供了从中间处理到数据安全、用户身份管理等一切事务的支持。几乎没有多少Web开发者曾使用过WS—标准接口,大多数移动设备平台对此都不提供完全的支持。  

开发安全的app

  似乎移动应用趋势不仅仅偏爱RESTful接口,移动性也将市场朝着RESTful的方向推动。这有可能发生,但是有两股逆流将开发者推向相反的方向。第一股是对安全可靠app不断增长的需求;第二股趋势是朝着“代理流程”的转移。

  随着NFC信贷管理及TV Everywhere之类的技术将移动服务转移到其他需要身份及权限确认的服务上,许多开发者发现他们创造了许多SOA/WS标准的功能,来增强RESTful接口。这么做不仅浪费,还创造了非标准的做法,限制了组件化的价值,而后者正是REST和SOA的推动力。与此同时,对往往令人困惑的SOA规范的简化(WSDL 2.0版),以及低端RESTful接口的功能需求也取得了进展。但是能力仍有很大的不足,许多开发者报告说WSDL 2.0的工具非常少,相对而言还很原始。

  这就是为什么“代理流程”趋势如此重要的原因:它不要求SOA和REST走到一起,而是将它们从应用架构上分离。其基本原则是,随着移动任务变得越来越复杂,用设备来收集和处理可联合起来创建app的多RESTful服务已经变得不切实际。对于存储或CPU资源有限的小型设备来说,不仅数据处理会成为负担,而且移动连接往往也是按使用定价的,因此用户会看到费用告警而不知道原因。代理流程则是用户激活型软件组件,在云端运行,可在用户发起请求时访问。然后该流程会进行数据收集,然后在云端处理并返回结果给移动设备。  

服务编排

  此结构将从设备中把创建应用的服务编排分离,把多RESTful服务的设备处理变成一种编排或工作流。因而对代理流程的RESTful请求可以利用标准的SOA、SOAP或WS接口及工作流引擎来进行编排,然后结果以RESTful响应的方式返回给设备。此类结构会强调REST的定义,因为有人可能会提出代理流程现在变成有状态的了,但是从Web前端变成应用引擎的处理会略有不同,后者现在几乎是所有企业均已使用的一种模型。

  无状态与SOA之争提出了可扩展性的问题,正是这个问题首先引发了RESTful的开发。Web证明了将客户端托管的多接口编排进app中的RESTful逻辑是可以扩展的。移动服务强调了出于成本及性能的原因采取该模型。问题是SOA或REST在移动时代中是否能找到平衡。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

翻译

boxi
boxi

相关推荐

  • 为什么2017年是软件开发改革的一年

    云和移动应用开发正在经历严峻的变化。你可以感谢——或者责备,那些帮助普通公民完成应用开发的工具。接下来有什么趋势?

  • Alpha DevCon公告:移动应用开发向JSON数据格式迁移

    JSON数据格式似乎统治了移动应用开发领域,企业和开发者认为用JSON格式处理数据可以帮助他们赢得更多利益。

  • 事件驱动框架和SOA在空军的应用

    空军正在利用SOA来改善数据共享,并实时跟踪战机,美国空军机动司令部的Michael Marek解释了企业可从中学习的经验。

  • HTML5如何融入企业实践中?

    移动应用已经越来越成为企业的主流应用,而移动化办公也在逐渐走向成熟。谈到移动开发,你一定会想到HTML5技术。事实上,随着HTML5技术的逐渐成熟,它已经在企业与开发人员之前流行开来。那么,究竟如何让HTML5融入企业实践中呢?