BT
x Por favor preencha a pesquisa do InfoQ !

Eric Newcomer sobre a Diferença Entre Transações RESTful vs. Web Services

por Dilip Krishnan , traduzido por Paulo R. C. Siqueira em 24 Mar 2009 |

Eric Newcomer, presidente da OSGi Alliance Enterprise Expert Group e antigo CTO da IONA Technologies, postou uma resposta para a questão “Qual é a diferença entre transações RESTful e transações Web Services?”

Eric prepara o contexto diferenciando transações em transações locais e globais, dizendo que transações locais não são particularmente interessantes já que elas trabalham da mesma forma em ambos os casos.

A questão portanto realmente pertence a transações globais – aquelas que envolvem mais do que um banco de dados, potencialmente em computadores diferentes – já que é ali que as coisas são muito diferentes.

Ele avisa que já que Web services são uma tecnologia, e REST é uma abordagem arquitetural a comparação pode não ser exata. No entanto ele atribui as diferenças em implementações de transações às diferentes suposições decorrentes da infraestrutura básica, especialmente relacionadas ao acesso distribuido a dados compartilhados, ou estado compartilhado.

Transações Web services ([…]WS-Transactions[…]) tem intenção de ser compatíveis com infraestrutura de TP [Transaction Processing] existentes. A abordagem REST, por outro lado, evolui da Web.

Como resultado ele diz que as diferenças chave entre os dois tipos de transações são baseadas em:

1. Como as transações são coordenadas entre sistemas participantes

Para compatibilidade com mecanismos de estado compartilhado existentes, transações Web services propagam o contexto transacional compartilhado entre participantes em uma transação global de forma que o acesso de cada participante ao estado compartilhado possa ser coordenado com os outros. Transações baseadas em REST assumem que apenas uma parte de uma transação global acessa o estado compartilhado em um determinado momento, algo como a passagem de um token. […] Eles são responsáveis apenas em saber o que têm que fazer quando eles recebem o estado compartilhado – quando é a vez deles.

2. Como os sistemas lidam com falha e recuperação de transações

Sistemas RESTful requerem um design muito diferente para tratamento de falha e recuperação, já que isso não pode ser automatizado, a escolha de um nível adicional de design e código de aplicação mostra resultado em um sistema mais bem situado para as pressuposições da Web.

Tenha certeza de verificar o artigo original.

Avalie esse artigo

Relevância
Estilo/Redação

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

Dê sua opinião

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão
Comentários da comunidade

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

Dê sua opinião
Feedback geral
Bugs
Publicidade
Editorial
Marketing
InfoQ Brasil e todo o seu conteúdo: todos os direitos reservados. © 2006-2016 C4Media Inc.
Política de privacidade
BT

Percebemos que você está utilizando um bloqueador de propagandas

Nós entendemos porquê utilizar um bloqueador de propagandas. No entanto, nós precisamos da sua ajuda para manter o InfoQ gratuito. O InfoQ não compartilhará seus dados com nenhum terceiro sem que você autorize. Procuramos trabalhar com anúncios de empresas e produtos que sejam relevantes para nossos leitores. Por favor, considere adicionar o InfoQ como uma exceção no seu bloqueador de propagandas.