estrutura message brokers
play

Estrutura Message Brokers O que so Message Brokers O Porqu! - PDF document

Estrutura Message Brokers O que so Message Brokers O Porqu! Arquitectura Geral Amadeu Dias Publisher-Subscriber amadeu@di.fc.ul.pt Aspectos a ter em conta Referncias O que so Message Brokers O porqu!


  1. Estrutura Message Brokers � O que são Message Brokers � O Porquê! � Arquitectura Geral Amadeu Dias � Publisher-Subscriber amadeu@di.fc.ul.pt � Aspectos a ter em conta � Referências O que são Message Brokers O porquê! � Middleware MOM específico: � Insuficiência dos mecanismos já existentes: � Também chamados de Integration Brokers � RPC � Orientado para interacções entre “servidores” � MOM básico � Tratam de: � Lidar com processos complexos de : � Encaminhamento e distribuição; � Interacções Assíncronas � Processamento; � Endereçamento Dinâmico � Filtragem ... � ...sendo necessário extender o MOM básico de mensagens para diferentes aplicações 1

  2. O porquê! O porquê! Exemplo Exemplo � Ambiente � Caso � Processamento de uma ordem de encomenda numa cadeia de produção ���������� ���������� ��� ���������� �������� ������� ���������� ������ ������ ������ ������ ��������������������������� O porquê! O porquê! Exemplo Exemplo � Problemas MOM básico � � Ao surgir nova aplicação interessada (Mont-end Cada aplicação é que decide para que filas e/ou destinatários a enviar � Ordem de encomenda (OE): � closing) : � Origem Dispatcher � � A aplicação Dispatcher tem que re-escrever a lógica Destino � � Inventory de encaminhamento necessária para escrever para as ERP � filas � Shipping � Encaminhamento O Dispatcher têm que explicitar quais as filas / aplicações que tem que receber a � OE � Cada mensagem só seria entregue a uma aplicação pelo que teriam existir várias filas ( uma por aplicação interessada) Tudo isto suportado pela aplicação que envia (Dispatcher) � 2

  3. O porquê! O porquê! Exemplo Exemplo � Num MOM � Message Broker (MB) � Cada aplicação é que tem que saber qual o formato a usar � São explicitadas regras de encaminhamento por cada ao escrever para as filas aplicação que recebe mensagens � Num MB � Exemplo � Cada aplicação escreve e recebe no formato que quer mas pode associar no MB uma transformação a aplicar as � O Dispatcher diz ao MB que tem uma mensagem mensagens quando estas lhes são entregues disponível � Exemplo � O MB encarrega-se de fazer o encaminhamento para � O Dispatcher especifíca na OE um preço em $US quem está interessado nessas mensagens � Ao escrever para a fila da aplicação de Shipping o MB � As regras podem ser aplicadas ao nível do broker ou de transforma esse valor em � fila O porquê! Sumário Arquitectura Geral Passar para o middleware varias decisões � A arquitectura de um sistema de Message � Regras � Broker é constituída por: Tipo de encaminhamento � � Transformações específicas para cada aplicação � Núcleo Existe separação lógica entre as aplicações que enviam e que � recebem � Adaptadores Cria-se um sistema capaz de integrar várias aplicações � heterogéneas ������ �������� ������������������� �������� ������ ������� ������� ������������������� ����� ����������� �������������� 3

  4. Arquitectura Arquitectura � Núcleo � Adaptadores � Executa e mantém as regras � Interagem com sistemas específicos � Faz a gestão das filas internas � Realizam a tradução de mecanismos de comunicação e de esquemas de dados � Mantém os dados � Rede Tamanho de pacotes � � Representação dos dados (IDL, XML) � Esquemas de dados Content Enricher / Content Filter � � Normalizer Publisher-Subscriber Publisher-Subscriber � Implementado na maioria dos Message Brokers � CORBA,... � Assenta sobre: � Publisher: produz conteúdos que são consumidos � Subscriber: “assina” um conjunto de conteúdos que são do seu interesse 4

  5. Publisher-Subscriber Publisher-Subscriber propriedades Comparações � Separação: � PS vs RPC � Espaço � O vulgar mecanismo de RPC não tem separação Anonimato e � no: confidencialidade � Tempo: ambos tem que participar activamente na � Tempo acção � Não permanência simultânea � Espaço: quem invoca tem que ter referência para o � Sincronização serviço invocado Não obrigatoriedade de � � Sincronização: quem invoca fica bloqueado à espera bloqueio nas actividades de resposta � Com RPC assíncrono evita-se o bloqueio de quem invoca ( não espera resposta ) Publisher-Subscriber Publisher- Subscriber Comparações Classificações � PS vs Filas de Mensagens (MOM) � Push � Apresenta separação a nível de: � Os intervenientes são passivos � Tempo: as mensagens são guardadas e não requerem a participação simultânea de ambos � Espaço: Os participantes não necessitam de saber � Pull que produz ou consome � A nivel de sincronização: � Os intervenientes são activos � O consumidor necessita de ficar bloqueado aquando da aquisição das mensagens das filas 5

  6. Publisher- Subscriber Publisher-Subscriber Classificações Classificações � Topic-based � Content- based � Cada subscriber assina um tópico individual � Sujeito às propriedades ou meta-dados da descrito por uma “keyword” mensagem � Cada tópico fica associado assim a um canal � As propriedades dos eventos a receber são expressas por: � Cada topico é visto como um serviço próprio � Condições de filtragem aquando da inicialização da � Tipos endereçamento: subscrição � Explo: Newsgroups � Eventos padrão que são inicializados com as � Flat (informatica) propriedades a observar � Hierachical ( informatica.disciplinas.pg.tm) Publisher-Subscriber Publisher-Subscriber Classificações Classificações •Content-based (exemplo) � Type-based � Existe um conjunto pré-definido de tipos de eventos que podem estar hierarquizados � No momento da subscrição explicita-se que apenas estamos interessados em subscrever um determinado tipo de eventos � Apenas esse tipo de eventos é entregue ao subscriber 6

  7. Publisher-Subscriber MB Classificações Aspectos ter em conta � Type-based (exemplo) � Prós + � Boa aproximação para integração de aplicações heterogéneas � Bom suporte para comunicação assíncrona � Contras – � Devido à lógica associada, o processamento de mensagens grandes pode afectar o desempenho dos sistemas. Referências � Gustavo,Casati,Kuno, Machiraju, “Web Services - Concepts, Architecture and Applications”, Springer � Hohpe,Woolf, “Enterprise Integration Patterns”, Addison Wesley � Eugster, Felber, Guerraoui,Kermarrec, “The Many Faces of Publish/Subscribe” � Oki,Pfluegl,Siegel,Skeen,”The Information Bus – An architecture for Extensible Distributed Systems” � Alonso,Pautasso,”Web Services – Concepts, Architecture and Applications” 7

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend