考虑将 RESTFul 方法应用于 DoD 项目

  • Javaid Aslam
  • 胡键

2009 年 2 月 16 日

话题:SOAREST架构

Tieu Luu 在最近的文章中以美国国防部的一个项目为例对 REST 架构风格进行了说明,该项目是“以网络为中心的数据策略(NCDS)”(NCDS)。他认为,NCDS 的某些核心目标能够更自然地被REST的四个基本原则支持,即统一接口、自描述消息、可寻址资源超媒体即应用状态引擎

2003 年,DoD 建立了一种被称为“以网络为中心的数据策略”的企业级数据策略,它拥有一套定义良好的基本目标。出于共享和使用企业内部数据的需要,该项目目标中的四个借鉴了万维网的某些公共特性。作者选取了该项目的这四个目标分别进行了说明:

  1. 数据可视化。这意味着数据的所有使用者都能够发现数据的存在。
  2. 数据可访问。这意味着使用者有合适的权限访问数据。
  3. 数据可理解。这基本意味着——使它成为自描述的。
  4. 支持非预期用户。这基本意味着用户的数量没有限制,与万维网类似。

作者对 REST 原则和 NCDS 目标之间存在的天然匹配进行了详细解释。比如,他解释了 REST 原则中统一接口可以如何自然地支持 NCDS 的数据可访问非预期用户特性。他在下表中总结了上述四个 REST 原则所涉及的 NCDS 四个目标:

REST 原则

与“以网络为中心的数据策略”的匹配

统一接口

· 暴露相同统一接口的所有资源保证了随时随地访问数据

· 因为所有用户(不论其是否想访问资源)都只能使用统一接口,故而支持非预期用户

自描述消息

· 使用标准的表示格式和描述性元数据令数据可以被广泛的客户端理解

可寻址资源

· 每个资源或者每条数据都具有可寻址的 URI,这使得它是可发现的,并从而增加了它的可见性

· URI 不仅使资源可被发现,而且也使资源可被访问

· 这些 URI 还使得相关联的信息提供了一个增进可理解性的环境

超媒体即应用状态引擎

· 这个“连通性”原则要求资源包含指向到其他相关资源的链接,这使得通过彼此的表示就可发现相关资源

· 这种资源的连通性产生了一个信息网络,它提供了一个增进可理解性的环境

作者也承认,对于 DoD 的有些场景而言,SOAP 和 WS-* 将会更有效,如应用到应用的集成场景。他依然坚持了自己的立场:他不认为 REST 是一种更好的方法,而认为它仅仅是在特定场景下能够提供收益的一种方案。最后,他表达了他的愿望,那就是,他的文章能说服 DoD 也使用 REST

InfoQ 已经发表了一系列文章、新闻和幻灯片,涵盖了 REST 架构风格和仍在围绕 REST 进行的争论。

查看英文原文Considering a RESTful Approach to Net-Centricity in DoD

SOAREST架构