RESTful Web服务是否被视为SOA的一个例子?

时间:2012-11-09 14:30:58

标签: rest soa

REST是否构成面向服务的体系结构?

2 个答案:

答案 0 :(得分:3)

SOA和REST都是架构风格。它们有一些共同的架构风格(如客户端/服务器和分层系统),但也可以从一些不共享的不同样式中获取(例如,SOA构建在Pipes& Filters和REST on Uniform Interface上)。

您可以构建RESTful SOA,但您必须遵守两者的原则。 另外,不要将REST与仅使用HTTP技术实现SOA混淆。

您可以看到this pdf,其中包含my book的第10章。第10.1节讨论了REST& SOA更详细

答案 1 :(得分:2)

这是一个非常具有哲学性和非常普遍的问题,很可能会被删除,但我会分享我的想法。

有一个名为Resource Oriented Architectures的概念,由Richardson和Ruby在RESTful Web Services (O'REILLY 2007)中定义。我认为这个术语是描述REST最常用方法的最佳术语。

ROA的主要思想由四个概念定义:

  
      
  1. 资源
  2.   
  3. 他们的名字(URIs)
  4.   
  5. 他们的陈述
  6.   
  7. 他们之间的联系
  8.   

和四个属性:

  
      
  1. 寻址
  2.   
  3. 无国籍
  4.   
  5. 连通
  6.   
  7. 统一界面
  8.   

在谈论RESTful Web服务时,我认为坚持使用ROA这一术语以及它所带来的所有信息是件好事。

至于SOA,这个名字非常模糊。有些人认为它应该只保留给Big(基于SOAP)的Web服务。就个人而言,我认为ROA是SOA的变体。该书的作者hovewer拒绝作出最后陈述。

  

面向服务的体系结构(SOA)可能是最不明确的术语   这就是为什么我在第1章中将其作为一个我不会使用的术语。我知道没有石蕊   test,指示给定的实现是否为SOA。

     理查森& Ruby, RESTful Web Services ,O'REILLY 2007

修改

这里引用的书has been made available under a Creative Commons License and is now possible to download free of charge