Transações Distribuídas entre Servíços Multi-Plataformas

Olá pessoal.

Bom, o objetivo desse blog é focar especificamente em “Velocity”, porém como estou em um projeto de SOA com uma série de desafios em WCF como, transações entre serviços em plataformas diferentes (.net, java jboss, oracle), resolvi escrever uma série de posts para falar um pouco sobre este assunto.

Primeiro um pouco de história. Em 2005 a Microsoft, a IBM, a SUN e outras empresas se juntaram para publicar uma série de especificações de protocolos que permitiriam que todas essas tecnologias falassem entre sí para chamarem serviços transacionais ACID. Entre eles o mais conhecido é o WS-AT.

  • WS-AtomicTransaction (WS-AT): Permite transações do tipo “short-lived” . Garante que as transações ocorridas dentro do contexto dos “bindings” sejam efetivadas dentro do conceito atômico do ACID.
  • WS-BusinessActivity (WS-BA): Permite transações do tipo “long-running activities” e suporta o conceito de “compensation”.
  • WS-Coordination (WS-Coor): Permite que transações mudem de contexto dentro de uma sequência de chamadas a serviços.

WS-AT não está ligado diretamente a um Sistema Operacional ou a uma tecnologia. Por exemplo, você pode utiliza-lo para criação de transações distribuídas entre serviços .Net WCF, JBOSS rodando em Linux, AIX ou até mesmo em Mainframe rodando Websphere para zOS.

Quando uma transação é propagada de um processo para outro, o DTC (Distributed Transaction Manager) deve ser utilizado pois dois ou mais participantes estão envolvidos na transação.

Num próximo post vou falar sobre os Gerenciadores de Transação Lightweight Transaction Manager (LTM), Kernel Resource Manager (KRM) e Distributed Transaction Manager (DTC).

image

REFERÊNCIAS

MessageVersion Class: https://msdn.microsoft.com/en-us/library/system.servicemodel.channels.messageversion.aspx

WS-Coordination: https://msdn.microsoft.com/en-us/library/ms996526.aspx

Especificações:

Web Services Coordination (WS-Coordination)

Web Services Atomic Transaction (WS-AtomicTransaction)

Web Services Business Activity Framework (WS-BusinessActivity)

WSDL:

WS-Coordination

WS-AtomicTransaction

WS-BusinessActivity

SOA Simplified :

Service Virtualization With The Managed Services Engine (MSE)https://msdn.microsoft.com/en-us/magazine/dd727511.aspx

 

Abraços,

Daibert