生产环境问题上的互联网WCF交易

时间:2016-09-01 11:10:44

标签: wcf transactions

问题:

  1. 为什么关于这个主题的信息太差了?
  2. 没有人使用WCF交易服务?
  3. 在这个生产环境中只允许使用端口80和443,WCF事务处理技术是否使用其他端口?
  4. 这项技术可以以任何方式互操作吗?客户端Java服务器.NET C#?
  5. 我正在使用WCF事务来确保客户端和服务之间的完整通信。还有另一种方法可以在不使用WCF交易的情况下确保这一点吗?
  6. 我感谢任何帮助和感谢

1 个答案:

答案 0 :(得分:1)

  

为什么关于这个主题的信息太差了?

因为除非没有其他选择(包括自杀),否则没有一个人想要在公共网站上通过端口80进行交易服务呼叫。

  

没有人使用WCF交易服务?

请参阅上一个问题的答案。

  

在此生产环境中,只允许使用端口80和   443,WCF事务技术使用其他端口吗?

不,WCF事务是WS-Atomic Transaction的实现,它使用端口公共端口。这最初是SOAP 1.2标准的一部分。

  

这项技术可以以任何方式互操作吗?客户端Java服务器.NET C#?

理论上是的,因为它基于一个标准,只要它正确实现,就可以与任何其他正确的实现互操作。但是,在实践中,标准几乎不可能统一实现,因此我会严重怀疑.net和java实现只能相互协作(它们很少能够通过SOAP 1.1进行互操作)。

  

我正在使用WCF事务来确保之间的完整通信   客户和服务。还有另一种方法可以确保这一点   不使用WCF交易?

这取决于完整沟通的含义。完全意义100%ACID?那不存在。如果世界爆炸怎么办?

99.99%的ACID?可以在不使用任何事务的情况下实现此级别的完整性(每10,000次调用1次失败)。这是我期望从精心设计的服务 - 消费者互动中看到的正常操作范围。

如果您需要更高的完整性评级,则可以让服务公开恢复或回滚操作,以便使用者可以采取适当的操作并回滚先前对失败的调用进行的任何调用。这种方法称为compensation pattern