Поделиться через


Использование WS-AtomicTransaction

WS-AtomicTransaction (WS-AT) — это протокол передачи транзакций с возможностью взаимодействия. Он позволяет передавать распределенные транзакции, используя сообщения веб-служб, и обеспечивать взаимодействие между разнородными инфраструктурами транзакций. WS-AT использует протокол двухфазной фиксации для передачи атомарного результата между распределенными приложениями, диспетчерами транзакций и диспетчерами ресурсов.

Реализация WS-AT, которую обеспечивает Windows Communication Foundation (WCF), включает службу протокола, встроенную в диспетчер транзакций координатора распределенных транзакций Майкрософт (MSDTC). С помощью WS-AT приложения WCF могут передавать транзакции другим приложениям, включая веб-службы с возможностью взаимодействия, созданные с использованием сторонней технологии.

При передаче транзакции между клиентским и серверным приложениями используемый протокол передачи транзакций определяется привязкой, которую сервер представляет на конечной точке, выбранной клиентом. Некоторые привязки, предоставляемые системой WCF, в качестве формата распространения транзакций по умолчанию задают протокол OleTransactions, тогда как другие привязки по умолчанию определяют протокол WS-AT. Можно также программно изменить выбор протокола передачи транзакций внутри заданной привязки.

Выбор протокола оказывает влияние на:

  • формат заголовков сообщений, используемых для передачи транзакции от клиента к серверу;

  • сетевой протокол, используемый для выполнения протокола двухфазной фиксации между диспетчером транзакций клиента и транзакцией сервера с целью распознавания результата транзакции.

Если сервер и клиент написаны с помощью WCF, использовать WS-AT не требуется. Вместо этого воспользуйтесь параметрами по умолчанию привязки NetTcpBinding с включенным атрибутом TransactionFlow. При этом будет применяться протокол OleTransactions. Дополнительные сведения см. в разделе <netTcpBinding>. В противном случае, если транзакции передаются в веб-службы, созданные на основе сторонних технологий, необходимо использовать протокол WS-AT.

См. также

Основные понятия

Настройка поддержки транзакций WS-Atomic