尽管REST在REST中具有以下优势,但为什么Google会使用大量SOAP?

时间:2015-08-24 15:34:30

标签: rest soap

为什么Google使用了大量的SOAP,尽管REST具有以下优势。

  1. REST是一种建筑风格。
  2. REST代表REpresentational State Transfer。
  3. REST可以使用SOAP Web服务,因为它是一个概念,可以使用任何协议,如HTTP,SOAP。
  4. REST使用URI来公开业务逻辑。 REST使用(通常)URI和方法(如GET,PUT,POST,DELETE)来公开资源。 JAX-RS是用于RESTful Web服务的Java API。
  5. REST没有定义太多像SOAP这样的标准。
  6. REST比SOAP需要更少的带宽和资源。
  7. RESTful Web服务从底层传输继承安全措施。
  8. REST允许使用不同的数据格式,如纯文本,HTML,XML,JSON等。
  9. REST比SOAP更受欢迎。
  10. REST是一种架构风格,与SOAP不同,它是一种标准化协议。
  11. REST遵循无状态模型
  12. REST具有更好的性能和可伸缩性。可以缓存REST读取。 JSON通常更适合数据和解析更快 没有公认的JSON模式标准。
  13. SOAP

    1. SOAP是一种协议。
    2. SOAP代表简单对象访问协议。
    3. SOAP不能使用REST,因为它是一种协议。
    4. SOAP使用服务接口来公开业务逻辑。 JAX-WS是SOAP Web服务的Java API。
    5. SOAP定义了严格遵循的标准。
    6. SOAP需要比REST更多的带宽和资源。
    7. SOAP定义了自己的安全性。
    8. SOAP仅允许XML数据格式。
    9. SOAP不如REST优先。
    10. SOAP实际上与底层传输协议无关,并且几乎可以通过任何协议(如HTTP,SMTP,TCP或JMS)发送。
    11. SOAP具有标准规范
    12. SOAP也有关于有状态实现的规范。
    13. 无法缓存基于SOAP的读取。
    14. 编组成本较高,但XML的核心优势之一是互操作性。对于XML,模式允许明确定义消息格式。 XML下的数据输入和控制也更加丰富。
    15. 提前致谢。

1 个答案:

答案 0 :(得分:0)

Steve Francia有一篇关于这个主题的很好的比较文章,虽然我的印象(和史蒂夫提到)谷歌已经从SOAP转向REST。如果您询问特定的API,我会很好奇吗?那么也许我可以针对该API制定更具体的答案。

但总的来说,虽然REST在几乎所有方面都是优越的,但这就是你使用SOAP的原因:

  • Web Service Security - 除了SSL之外,SOAP还支持WS-Security,它通过中介添加了一些企业安全功能和身份,而不仅仅是点对点(SSL) 。它还提供数据完整性和数据隐私的标准实现。

  • Web Service Atomic Transaction - WS-AtomicTransaction是必需的,如果您需要符合ACID标准的交易(尽管可能不是谷歌会使用它的原因)。

  • Web Service Reliable Messaging - SOAP通过WS-ReliableMessaging进行标准消息传递,支持内置的成功/重试逻辑,并提供端到端的可靠性,即使是通过SOAP中介也是如此。