在使用 Web API(RESTful 服务)访问远程基础设施时,我看到了一个争议。如果您能发表评论,我将不胜感激。来自文章“RESTful Web 服务与“大”Web 服务:做出正确的架构决策”的建议[1] 是使用 Web API 而不是临时集成(a la' mashup)和快速原型设计。[2] 中的实证研究表明,在重用现有信息和功能的场景中遵循了这些建议。但是,通过 Web API 重用基础架构并不能很好地适应 ad hoc 集成的任务。我的印象是,基础设施通常在我拥有的资源不能很好地扩展以解决我想要解决的问题的场景中被重用:大量数据、高带宽、高并发。尽管如此,亚马逊通过以下方式提供对其基础设施(存储空间、消息队列)的远程访问:
- 经典的 SOAP Web 服务(所谓的大 Web 服务)和
- 轻量级 RESTful Web 服务(所谓的 Web API)。
尽管没有任何书面说明客户(在亚马逊网络服务的案例研究中描述)是使用大网络服务还是网络 API,但亚马逊以网络 API 的形式提供对其基础设施的访问作为替代方案的事实必须是有意义的。
你知道他们的动机是什么吗?你知道人们为了快速原型设计而重用基础设施的情况吗?或者也许是为了测试?换句话说,如果我想重用 Amazon 提供的基础设施,我应该在哪些示例情况下使用 SOAP 或 REST 哪种 API 样式?
编辑:在这种情况下,作为基础设施,我的意思是:存储空间、计算能力、互联网带宽。因此,我想知道这些资源是否在临时集成中被重用。
Cesare Pautasso、Olaf Zimmermann、Frank Leymann,RESTful Web 服务与“大”Web 服务:做出正确的架构决策,第 805-814 页,Jinpeng Huai、Robin Chen、Hsiao-Wuen Hon、Yunhao Liu、Wei-Ying Ma , Andrew Tomkins, 张晓东(主编),第 17 届国际万维网会议论文集,ACM 出版社,中国北京,2008 年 4 月。
Hartmann, Bjorn & Doorley, Scott & Klemmer, Scott R., Hacking, Mashing, Gluing: Understanding Opportunistic Design , IEEE Pervasive Computing , vol. 7,没有。3, 46-54 (2008)。