Uso do padrão AMQP para transporte de mensagens entre atores remotos

O modelo de atores tem sido visto como uma abordagem alternativa à programação concorrente convencional, baseada em travas e variáveis de condição. Atores são agentes computacionais que se comunicam por troca de mensagens e que possuem uma caixa de correio e um comportamento. As mensagens destin...

Full description

Bibliographic Details
Main Author: Thadeu de Russo e Carmo
Other Authors: Francisco Carlos da Rocha Reverbel
Language:Portuguese
Published: Universidade de São Paulo 2012
Subjects:
Online Access:http://www.teses.usp.br/teses/disponiveis/45/45134/tde-20082012-194131/
Description
Summary:O modelo de atores tem sido visto como uma abordagem alternativa à programação concorrente convencional, baseada em travas e variáveis de condição. Atores são agentes computacionais que se comunicam por troca de mensagens e que possuem uma caixa de correio e um comportamento. As mensagens destinadas a um ator são armazenadas na caixa de correio do ator e processadas de maneira assíncrona. Sistemas de middleware orientados a mensagens trabalham com troca assíncrona de mensagens e formam uma base que simplifica o desenvolvimento de aplicações distribuídas. Tais sistemas permitem interoperabilidade com baixo acoplamento e provêm suporte para tratamento robusto de erros em caso de falhas. Message brokers são frequentemente apresentados como uma tecnologia que pode mudar a maneira com que sistemas distribuídos são construídos. A especificação AMQP é uma proposta recente de padronização de um protocolo para message brokers. Neste trabalho exploramos a potencial sinergia entre um message broker e uma implementação do modelo de atores. Criamos uma versão modificada da implementação do modelo de atores do projeto Akka que utiliza um message broker AMQP como mecanismo de transporte de mensagens para atores remotos. === The actor model has been seen as an alternative for conventional concurrent programming based on locks and condition variables. Actors are computational agents that communicate by sending messages and have a mailbox and a behavior. The messages sent to an actor are stored in its mailbox and are asynchronously processed. Message oriented middleware systems work with asynchronous message exchange and create a base that simplifies the development of distributed applications. These systems have interoperability with low coupling and provide support for robust error handling in case of failures. Message brokers are often presented as a technology that can change the way distributed systems are built. The AMQP specification is a recent proposal of a standard protocol for message brokers. In this document we explore the potential synergy between a message broker and an implementation of the actor model. We created a modified version of the actor model implementation provided by the Akka project. Our modified implementation uses an AMQP message broker as the transport engine for messages to remote actors.