休息&肥皂交易能力

时间:2015-07-02 05:17:22

标签: rest soap

在一次采访中,采访者问,什么是交易能力,肥皂和休息具有交易能力?

你能用简单的方法解释我吗。

提前致谢,

1 个答案:

答案 0 :(得分:0)

当我遇到类似的问题时,遇到过这些引用。希望它有所帮助。

  • 来自http://spf13.com/post/soap-vs-rest

      

    <强> WS-AtomicTransaction的    需要通过服务进行ACID事务,您将需要SOAP。虽然REST支持事务,但它不是   全面且不符合ACID标准。幸运的是ACID交易   在互联网上几乎没有意义。 REST受HTTP限制   本身不能提供跨分布式的两阶段提交   事务资源,但SOAP可以。互联网应用程序通常不会   需要这种级别的事务可靠性,企业应用程序   有时做。

  • 来自https://msdn.microsoft.com/en-us/magazine/dd942839.aspx

      

    交易怎么样?

         

    这是SOAP和WS- *明确支持的另一个领域   一个“高级”功能,REST没有。 WS-Atomic Transactions   支持分布式,两阶段提交事务语义   基于SOAP的服务。 REST不支持分布式事务。   一般来说,如果你想要一个类似交易的东西   RESTful系统,您创建一个新资源。 (创建新资源   每当遇到RESTful系统的问题时,通常都会解决   大多数问题。)您可以拥有一个名为Transaction的资源。当你的   客户需要做一些交易性的事情(比如转账)   在两个银行账户之间),客户创建一个交易资源   它指定受影响的所有正确资源(在我的示例中,   通过对事务工厂URI执行POST来获得两个银行帐户。该   然后,客户端可以通过向事务发送PUT来执行更新   URI并通过向URI发送DELETE来关闭事务。

         

    当然,这需要一些手工编码和明确的   控制你的系统,而WS-Atomic Transactions系统是   更自动因为(在Windows通信的情况下)   基础)它与运行时的管道相关联。

         

    如果您的系统绝对需要原子事务语义   不同的系统,WS-Atomic Transactions可能是要走的路。   以这种方式使用分布式事务可能是也可能不是智能的   因为它增加了两个系统之间的耦合并产生了   如果你不控制两端的代码,可能会出现问题。   但最重要的是使用正确的工具   工作(一旦你弄清楚什么是正确的工作)。为了辩护   REST,我认为可以公平地说,鉴于今天的分布式,   面向服务的体系结构,如此紧密地耦合两个端点   使用分布式事务可能不是最好的设计。在   另一方面,某些情况需要这种类型的功能,并且   如果需要,请使用SOAP和WS-Atomic Transactions。