事务处理多层应用程序

发布于 2024-11-30 19:48:31 字数 195 浏览 1 评论 0原文

是否有可能跨多个系统进行交易?

例如:

第 1 层 - 公开 Web 服务(部署到 weblogic) 第 2 层 - .NET 前端(部署到 IIS)

我们可以为从 .NET 发起的多个 Web 服务调用进行事务提交或回滚吗?

如果是这样,有人可以给我指出任何资源或文件吗?各层合规者参与交易有什么特殊要求吗?

Is there a possibility having transactions across multiple systems?

For exeample:

layer 1 - exposes web services (Deployed to weblogic)
layer 2 - .NET front end (Deployed to IIS)

Can we have transaction commit or rollback for multiple web service calls initiated from .NET?

If so, can someone point me any resource or document? And is there any special requirement for each of the layer comply to participate in transactions?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

撑一把青伞 2024-12-07 19:48:31

是的,这是可能的。 WCF 允许使用利用 WS-Atomic Transaction 标准,假设您有 System.Transactions.TransactionScope 可在 .NET 客户端中使用(例如,Silverlight 就没有此功能)。

CodeProject 上有一个出色的 示例,它展示了如何生成和使用交易 Web使用 TransactionScope 的 .NET 服务。

Yes, it is possible. WCF allows for the consumption of web services that utilize the WS-Atomic Transaction standard, assuming you have System.Transactions.TransactionScope available in your .NET client (Silverlight, for example, does not have this).

There is an excellent example on CodeProject that shows both how to produce and consume transaction web services in .NET using TransactionScope.

两相知 2024-12-07 19:48:31

casperOne 提到的 TransactionScope 是一个很好的例子解决方案(如果适用于您的场景)。我爱上了它带来的简单性和力量。

但是,我注意到您有一个 Java 标记并提及 Weblogic 作为 Web 服务层,因此 TransactionScopeRequired 属性 必须通过 WS-AT(Web 服务原子事务)或类似的转录来实现 协议。

请参阅此处:http://publib.boulder.ibm.com/infocenter/wsdoc400/v6r0/index.jsp?topic=/com.ibm.websphere.iseries.doc/info/ae/ae/cjta_wstran.html

casperOne's mention of TransactionScope is an excellent solution if it is available in your scenario. I have fallen in love with the simplicity and power it brings to the table.

However, I note that you have a Java tag and mention Weblogic as the web service tier, so the TransactionScopeRequired property would have to be implemented via WS-AT (Web Services Atomic Transaction) or a similar transcriptional protocol.

See here: http://publib.boulder.ibm.com/infocenter/wsdoc400/v6r0/index.jsp?topic=/com.ibm.websphere.iseries.doc/info/ae/ae/cjta_wstran.html

吝吻 2024-12-07 19:48:31

这绝对是可能的,但可能会比你想象的更困难。您需要控制来修改这些 Web 服务的执行环境以增强它们,以便它们可以使用 WS-AT 标头。此外,与任何分布式事务环境一样,由于大量的管理开销,您可能会导致性能提高。

SOA-WORLD 有一些很棒的文章解释了 Web 服务事务和所有相关的 OASIS 标准。这是WS-Coordination 上的一个,如果我能找到其余的,我会添加它们。

Its definitely possible, but could prove to be harrier than you'd think. You need control to modify the execution environment of those web services to augment them such that they can consume the WS-AT headers. In addition as with any distributed transaction environment you probably will incur a performance increase because of the substantial administrative overhead.

SOA-WORLD had some great articles that explain Web Service transactions and all the related OASIS standards. Here is the one on WS-Coordination if I can find the rest I'll add them.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文