首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rest & Soap事务处理能力

Rest & Soap事务处理能力
EN

Stack Overflow用户
提问于 2015-07-02 05:17:21
回答 1查看 1.6K关注 0票数 2

在一次面试中,面试官问,什么是交易能力,在soap和rest中,什么是有事务能力的?

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

提前谢谢你,

EN

回答 1

Stack Overflow用户

发布于 2015-07-02 05:31:54

当我遇到类似的问题时,我发现了这些参考资料。希望能帮上忙。

  • 来自http://spf13.com/post/soap-vs-rest WS-AtomicTransaction需要服务上的ACID事务,您将需要SOAP。虽然REST支持事务,但它不那么全面,也不兼容ACID。幸运的是,ACID交易在互联网上几乎没有任何意义。REST受到HTTP本身的限制,HTTP本身不能提供跨分布式事务资源的两阶段提交,但SOAP可以。互联网应用程序通常不需要这种级别的交易可靠性,企业应用程序有时也需要。
  • 来自https://msdn.microsoft.com/en-us/magazine/dd942839.aspx 那交易呢? 这里是SOAP和WS-*对“高级”特性的显式支持的另一个领域,REST没有。原子事务支持基于SOAP的服务上的分布式两阶段提交事务语义.REST不支持分布式事务。一般来说,如果您想要RESTful系统中的事务,您可以创建一个新的资源。(每当您遇到RESTful系统的问题时,创建一个新资源通常可以解决大多数问题。)您可以拥有一个名为Transaction的资源。当客户端需要进行事务处理(例如在两个银行帐户之间转账)时,客户端通过向事务工厂URI发送一个POST来创建一个事务资源,该资源指定所有受影响的正确资源(在我的示例中是两个银行帐户)。然后,客户端可以通过向事务URI发送PUT来执行更新,并通过向URI发送DELETE来关闭事务。 当然,这需要一定的手工编码和对系统的显式控制,而WS原子事务系统则更自动化,因为它与运行时的管道有关(在的情况下)。 如果您的系统绝对需要跨不同系统的原子事务语义,那么WS-原子事务可能是可行的。以这种方式使用分布式事务可能是聪明的,也可能不是聪明的,因为它增加了两个系统之间的耦合,如果您不对两端的代码进行控制,则会产生潜在的问题。但是,最重要的是要为正确的工作使用正确的工具(一旦你找到了正确的工作)。为了维护REST,我认为公平地说,鉴于当今分布式的面向服务的体系结构,如此紧密地使用分布式事务的两个端点耦合可能不是最好的设计。另一方面,有些情况需要这种类型的功能,如果需要,可以使用SOAP和WS原子事务。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31176102

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档