SlideShare uma empresa Scribd logo
1 de 21
MOM
Middleware Orientado a Mensagens
CONCEITOS
 Conhecidos como sistemas de enfileiramento de
mensagens.
 Suporte para comunicação assíncrona persistente.
 Capacidade de armazenamento de médio prazo para as
mensagens trocadas
 Aplicações se comunicam retirando e colocando
mensagens em filas específicas.
 Mensagem será eventualmente entregue ao receptor.
CONCEITOS
 Sistemas de enfileiramento de mensagens ajudam
fornecendo meios básicos para empacotar cada
subconsulta em uma mensagem e roteá-la até o banco
de dados adequado.
 Exemplo:
 Consulta que abranja vários bancos de dados pode ser repartida
em subconsultas que são repassadas para bancos de dados
individuais.
QUANDO
UTILIZAR?
 Quando se desejar que os componentes de uma aplicação
não dependam de informações a respeito da interface de
outros componentes de forma a poder facilmente substitui-
los;
 Deseja-se executar uma aplicação sem que exista a
necessidade que todos os componentes estarem
executando simultaneamente;
 O modelo de negócios da aplicação permite que um
componente envie informações a outro e continue a
operar sem receber uma resposta imediatamente.
APLICAÇÕES
MOM
 E-mail
 Fluxo de trabalho
 Groupware
 Processamento em lotes
 Integração de banco de dados
 Aplicações em Geral
FUNCIONAMENT
O
1. Aplicações se comunicam inserindo mensagens em
filas específicas.
2. Mensagens são repassadas por uma série de
servidores de comunicação.
3. Mensagens são entregues ao destinatário, mesmo
que ele não esteja em funcionamento quando a
mensagem foi enviada
Remetente e Receptor podem executar em completa
independência.
ESTADOS DO
REMETENTE E DO
RECEPTOR
 A ideia básica é a comunicação por filas. Assim as
aplicações se comunicam inserindo mensagens em filas
específicas. Nenhuma garantia é dada sobre quando, e
nem ao menos se, a mensagem será lida.
 Uma fila só pode ser lida por sua aplicação associada,
mas é possível que várias aplicações compartilhem uma
mesma fila.
CARACTERÍSTICAS
DAS MENSAGENS
 Mensagens podem conter qualquer tipo de dado
 Mensagens devem ser adequadamente endereçadas
 O endereçamento é feito com o fornecimento de um nome
exclusivo da fila destinatária no âmbito do sistema
CARACTERÍSTICAS
DAS MENSAGENS
ARQUITETURA
Conceitos
 Fila de Fonte: Fila na qual o remetente envia a mensagem. Estas
filas são filas locais do remetente.
 Fila de Destino: Uma mensagem colocada em uma fila contém a
especificação de uma fila de destino para a qual ela deve ser
transferida.
 Gerenciadores de Fila: Um gerenciador de fila interage
diretamente com a aplicação que está enviando ou recebendo uma
mensagem.
 Repassadores: Repassam mensagens que chegam para outros
gerenciadores de fila.
ARQUITETURA
Conceitos
 Sistema de enfileiramento de mensagens pode crescer
até uma rede de sobreposição (overlay) completa de
nível de aplicação.
EXEMPLO
EXEMPLO:
VENDA DE
INGRESSOS
 A figura mostra como vários clientes podem acessar um
servidor Web de venda de ingressos pela Internet. Os
clientes Web exibem páginas HTML que mostram
disponibilidade e preço de ingressos e diagramas dos
assentos.
 Uma empresa que venda ingressos para eventos pode
usar os seguintes recursos dos Serviços de Enfileiramento
de Mensagens para melhorar seu sistema:
 Serviço de mensagens sem conexão. Atualização de
conta e envio de ingresso, realizados de maneira
assíncrona.
EXEMPLO:
VENDA DE
INGRESSOS
 Conexão à Internet. Aceita pedidos pela Internet
usando um aplicativo dos Serviços de Enfileiramento de
Mensagens e componentes COM, em conjunto com
páginas ASP e IIS (Serviços de Informação da Internet).
Isto é feito por meio de formulários da Web, que dão um
suporte de segurança e de várias plataformas.
 Suporte de várias plataformas. Integra computadores
pessoais e sistemas legados. Por exemplo, o servidor de
venda de ingressos pode estar sendo executando em
um computador com UNIX.
MULTICASTING
 Ideia Básica: Nós se organizam em uma rede de
sobreposição que é usada para disseminar informações
para seus membros
 Nós na rede de sobreposição podem cruzar vários enlaces
físicos: roteamento pode não ser ótimo
 Construção do overlay
 Árvore: único caminho entre cada par de nós
 Malha: Cada nó terá vários vizinhos, em geral, existem
vários caminhos entre cada par de nós
MULTICASTING
 Multicasting de Nível de Aplicação (MNA)
 No caso da estrutura em árvore, o problema é construir
uma árvore eficiente!
MULTICASTING
MNA - Qualidade da estrutura
 Estresse de enlace: Quantas vezes uma mensagem
atravessa o mesmo enlace?
 Exemplo: mensagem de A a D atravessa Ra,Rb duas vezes
 Penalidade de atraso relativo: Razão entre o atraso entre
dois nós na sobreposição e o atraso que esses dois nós
sofreriam na rede subjacente.
 Exemplo: mensagens de B a C possuem um atraso de 71 no
overlay, mas de 47 no nível de rede, que gera uma penalidade de 1.51
 Custo da árvore: parâmetro de medição global,
relacionado com a minimização dos custos agregados de
enlaces.
 Exemplo: atraso entre dois nós finais → spanning tree
MULTICASTING
Disseminação de Dados – Algoritmos Epidêmicos
 Ideia Básica: propagar informações rapidamente entre um
grande conjunto de nós usando somente informações locais.
Não há nenhum componente central que coordena a
disseminação de informações.
 Atualizações para um item de dado específico são iniciadas
em um único nó, evitando conflito de escrita.
MULTICASTING
Modelos de Disseminação de Dados
 Três tipos de nós:
 Infectado: se contiver dados que está disposto a
espalhar para outros nós
 Suscetível: nó que ainda não tenha visto esses dados
 Removido: nó atualizado que não está disposto ou
capacitado para propagar os dados.
MULTICASTING
Antientropia
 Ideia Básica: Um nó P escolhe aleatoriamente um outro
nó Q
 Push: P envia suas próprias atualizações a Q
 Pull: P recebe novas atualizações de Q
 Push-Pull: P e Q enviam atualizações um ao outro
(abordagem enviar-receber)
MULTICASTING
Gossiping
 Ideia Básica: Se um nó P acabou de ser atualizado com
o item de dado x, ele contata um nó arbitrário Q e tenta
enviar a atualização a Q. Contudo, é possível que Q já
tenha sido atualizado por um outro nó. Nesse caso, P
pode perder o interesse em levar adiante a propagação
da atualização, com probabilidade 1/k
 Problema: Nós poderão não receber atualizações!

Mais conteúdo relacionado

Semelhante a MOM

Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionaisDuFelix02
 
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptxAula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptxChadidoDiogo1
 
Sistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidosSistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidosrobsons75
 
Apostila.de.redes. .cabeamento.e.estruturado
Apostila.de.redes. .cabeamento.e.estruturadoApostila.de.redes. .cabeamento.e.estruturado
Apostila.de.redes. .cabeamento.e.estruturadojpl200
 
Introdução a Sistemas Distribuídos
Introdução a Sistemas DistribuídosIntrodução a Sistemas Distribuídos
Introdução a Sistemas DistribuídosVictor Hazin da Rocha
 
Sistemas distribuídos aula 1
Sistemas distribuídos aula 1Sistemas distribuídos aula 1
Sistemas distribuídos aula 1Renato William
 
Redes de computadores
Redes de computadoresRedes de computadores
Redes de computadoresCarol Pereira
 
08Apresentação5.pptx
08Apresentação5.pptx08Apresentação5.pptx
08Apresentação5.pptxMarcosJoel5
 
Ccna exploration fundamentos de rede - 4 camada de transporte osi
Ccna exploration   fundamentos de rede - 4 camada de transporte osiCcna exploration   fundamentos de rede - 4 camada de transporte osi
Ccna exploration fundamentos de rede - 4 camada de transporte osiveruzkavaz
 
Ccna exploration fundamentos de rede - 2 comunicando-se pela rede
Ccna exploration   fundamentos de rede - 2 comunicando-se pela redeCcna exploration   fundamentos de rede - 2 comunicando-se pela rede
Ccna exploration fundamentos de rede - 2 comunicando-se pela redeveruzkavaz
 
Desenho da rede
Desenho da redeDesenho da rede
Desenho da redeH P
 

Semelhante a MOM (20)

Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionais
 
Introducao.2s
Introducao.2sIntroducao.2s
Introducao.2s
 
Modulo1 1
Modulo1 1Modulo1 1
Modulo1 1
 
Infraestrutura de redes lan e wlan
Infraestrutura de redes lan e wlanInfraestrutura de redes lan e wlan
Infraestrutura de redes lan e wlan
 
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptxAula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
Aula CARACTERIZAÇÁO DE SISTEMAS distribuidos.pptx
 
Modelo de Referência OSI
Modelo de Referência OSIModelo de Referência OSI
Modelo de Referência OSI
 
Internet
InternetInternet
Internet
 
Sistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidosSistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidos
 
Apostilaredes
ApostilaredesApostilaredes
Apostilaredes
 
Apostila.de.redes. .cabeamento.e.estruturado
Apostila.de.redes. .cabeamento.e.estruturadoApostila.de.redes. .cabeamento.e.estruturado
Apostila.de.redes. .cabeamento.e.estruturado
 
Introdução a Sistemas Distribuídos
Introdução a Sistemas DistribuídosIntrodução a Sistemas Distribuídos
Introdução a Sistemas Distribuídos
 
Sistemas distribuídos aula 1
Sistemas distribuídos aula 1Sistemas distribuídos aula 1
Sistemas distribuídos aula 1
 
ESB - detalhes
ESB - detalhesESB - detalhes
ESB - detalhes
 
Redes de computadores
Redes de computadoresRedes de computadores
Redes de computadores
 
08Apresentação5.pptx
08Apresentação5.pptx08Apresentação5.pptx
08Apresentação5.pptx
 
Ccna exploration fundamentos de rede - 4 camada de transporte osi
Ccna exploration   fundamentos de rede - 4 camada de transporte osiCcna exploration   fundamentos de rede - 4 camada de transporte osi
Ccna exploration fundamentos de rede - 4 camada de transporte osi
 
Ccna exploration fundamentos de rede - 2 comunicando-se pela rede
Ccna exploration   fundamentos de rede - 2 comunicando-se pela redeCcna exploration   fundamentos de rede - 2 comunicando-se pela rede
Ccna exploration fundamentos de rede - 2 comunicando-se pela rede
 
Poster08
Poster08Poster08
Poster08
 
Desenho da rede
Desenho da redeDesenho da rede
Desenho da rede
 
Trabalho de rede.
Trabalho de rede.Trabalho de rede.
Trabalho de rede.
 

MOM

  • 2. CONCEITOS  Conhecidos como sistemas de enfileiramento de mensagens.  Suporte para comunicação assíncrona persistente.  Capacidade de armazenamento de médio prazo para as mensagens trocadas  Aplicações se comunicam retirando e colocando mensagens em filas específicas.  Mensagem será eventualmente entregue ao receptor.
  • 3. CONCEITOS  Sistemas de enfileiramento de mensagens ajudam fornecendo meios básicos para empacotar cada subconsulta em uma mensagem e roteá-la até o banco de dados adequado.  Exemplo:  Consulta que abranja vários bancos de dados pode ser repartida em subconsultas que são repassadas para bancos de dados individuais.
  • 4. QUANDO UTILIZAR?  Quando se desejar que os componentes de uma aplicação não dependam de informações a respeito da interface de outros componentes de forma a poder facilmente substitui- los;  Deseja-se executar uma aplicação sem que exista a necessidade que todos os componentes estarem executando simultaneamente;  O modelo de negócios da aplicação permite que um componente envie informações a outro e continue a operar sem receber uma resposta imediatamente.
  • 5. APLICAÇÕES MOM  E-mail  Fluxo de trabalho  Groupware  Processamento em lotes  Integração de banco de dados  Aplicações em Geral
  • 6. FUNCIONAMENT O 1. Aplicações se comunicam inserindo mensagens em filas específicas. 2. Mensagens são repassadas por uma série de servidores de comunicação. 3. Mensagens são entregues ao destinatário, mesmo que ele não esteja em funcionamento quando a mensagem foi enviada Remetente e Receptor podem executar em completa independência.
  • 7. ESTADOS DO REMETENTE E DO RECEPTOR  A ideia básica é a comunicação por filas. Assim as aplicações se comunicam inserindo mensagens em filas específicas. Nenhuma garantia é dada sobre quando, e nem ao menos se, a mensagem será lida.  Uma fila só pode ser lida por sua aplicação associada, mas é possível que várias aplicações compartilhem uma mesma fila.
  • 8. CARACTERÍSTICAS DAS MENSAGENS  Mensagens podem conter qualquer tipo de dado  Mensagens devem ser adequadamente endereçadas  O endereçamento é feito com o fornecimento de um nome exclusivo da fila destinatária no âmbito do sistema
  • 10. ARQUITETURA Conceitos  Fila de Fonte: Fila na qual o remetente envia a mensagem. Estas filas são filas locais do remetente.  Fila de Destino: Uma mensagem colocada em uma fila contém a especificação de uma fila de destino para a qual ela deve ser transferida.  Gerenciadores de Fila: Um gerenciador de fila interage diretamente com a aplicação que está enviando ou recebendo uma mensagem.  Repassadores: Repassam mensagens que chegam para outros gerenciadores de fila.
  • 11. ARQUITETURA Conceitos  Sistema de enfileiramento de mensagens pode crescer até uma rede de sobreposição (overlay) completa de nível de aplicação.
  • 13. EXEMPLO: VENDA DE INGRESSOS  A figura mostra como vários clientes podem acessar um servidor Web de venda de ingressos pela Internet. Os clientes Web exibem páginas HTML que mostram disponibilidade e preço de ingressos e diagramas dos assentos.  Uma empresa que venda ingressos para eventos pode usar os seguintes recursos dos Serviços de Enfileiramento de Mensagens para melhorar seu sistema:  Serviço de mensagens sem conexão. Atualização de conta e envio de ingresso, realizados de maneira assíncrona.
  • 14. EXEMPLO: VENDA DE INGRESSOS  Conexão à Internet. Aceita pedidos pela Internet usando um aplicativo dos Serviços de Enfileiramento de Mensagens e componentes COM, em conjunto com páginas ASP e IIS (Serviços de Informação da Internet). Isto é feito por meio de formulários da Web, que dão um suporte de segurança e de várias plataformas.  Suporte de várias plataformas. Integra computadores pessoais e sistemas legados. Por exemplo, o servidor de venda de ingressos pode estar sendo executando em um computador com UNIX.
  • 15. MULTICASTING  Ideia Básica: Nós se organizam em uma rede de sobreposição que é usada para disseminar informações para seus membros  Nós na rede de sobreposição podem cruzar vários enlaces físicos: roteamento pode não ser ótimo  Construção do overlay  Árvore: único caminho entre cada par de nós  Malha: Cada nó terá vários vizinhos, em geral, existem vários caminhos entre cada par de nós
  • 16. MULTICASTING  Multicasting de Nível de Aplicação (MNA)  No caso da estrutura em árvore, o problema é construir uma árvore eficiente!
  • 17. MULTICASTING MNA - Qualidade da estrutura  Estresse de enlace: Quantas vezes uma mensagem atravessa o mesmo enlace?  Exemplo: mensagem de A a D atravessa Ra,Rb duas vezes  Penalidade de atraso relativo: Razão entre o atraso entre dois nós na sobreposição e o atraso que esses dois nós sofreriam na rede subjacente.  Exemplo: mensagens de B a C possuem um atraso de 71 no overlay, mas de 47 no nível de rede, que gera uma penalidade de 1.51  Custo da árvore: parâmetro de medição global, relacionado com a minimização dos custos agregados de enlaces.  Exemplo: atraso entre dois nós finais → spanning tree
  • 18. MULTICASTING Disseminação de Dados – Algoritmos Epidêmicos  Ideia Básica: propagar informações rapidamente entre um grande conjunto de nós usando somente informações locais. Não há nenhum componente central que coordena a disseminação de informações.  Atualizações para um item de dado específico são iniciadas em um único nó, evitando conflito de escrita.
  • 19. MULTICASTING Modelos de Disseminação de Dados  Três tipos de nós:  Infectado: se contiver dados que está disposto a espalhar para outros nós  Suscetível: nó que ainda não tenha visto esses dados  Removido: nó atualizado que não está disposto ou capacitado para propagar os dados.
  • 20. MULTICASTING Antientropia  Ideia Básica: Um nó P escolhe aleatoriamente um outro nó Q  Push: P envia suas próprias atualizações a Q  Pull: P recebe novas atualizações de Q  Push-Pull: P e Q enviam atualizações um ao outro (abordagem enviar-receber)
  • 21. MULTICASTING Gossiping  Ideia Básica: Se um nó P acabou de ser atualizado com o item de dado x, ele contata um nó arbitrário Q e tenta enviar a atualização a Q. Contudo, é possível que Q já tenha sido atualizado por um outro nó. Nesse caso, P pode perder o interesse em levar adiante a propagação da atualização, com probabilidade 1/k  Problema: Nós poderão não receber atualizações!