HornetQ - 2.Arquitetura do HornetQ

Post on 29-Jun-2015

652 views 2 download

Transcript of HornetQ - 2.Arquitetura do HornetQ

Treinamento HornetQ

Agenda

• O que é o HornetQ?• Arquitetura baseada em POJOs• APIs de Comunicação• Persistent Journal• Tipos de Uso

Arquitetura do HornetQ

• O que é o HornetQ?– Projeto open source mantido pela JBoss.– Características:

• 100% open source• Projetado com usabilidade em mente• Escrito em Java (roda com Java 6 ou superior)• Performático• Arquitetura baseada em POJOs• Suporta mecanismos de cluster e HA.

Arquitetura do HornetQ

• O que é HornetQ?– O que significa arquitetura baseada em POJOs?

• Permite ser injetado dentro da aplicação• Pode ser instanciado por vários frameworks de DI, como por

exemplo: JBoss Microcontainer, Google Guice e Spring

Arquitetura do HornetQ

• APIs de Comunicação– Os clientes se comunicam com o HotnetQ através de duas

APIs, são elas:• Core Client

– Conjunto de componentes fornecidos com o servidor, que permite a iteração das aplicações com o MOM através das várias funcionalidades disponíveis.

• JMS Client– Padrão JMS de comunicação.

Arquitetura do HornetQ

• APIs de Comunicação

Apenas faz a tradução para a API nativa.

Arquitetura do HornetQ

• Persistent Journal– A razão da alta performance no HornetQ está no seu

mecanismo de persistencia.– Não utiliza banco de dados.– Baseado no conceito Journals– Persistência baseada em código nativo para Linux

Arquitetura do HornetQ

• Tipos de Uso– Standalone

• Independente de um servidor de aplicação JEE• Tem mecanismo de bootstrap próprios• Pode ser integrado com o servidor de aplicação JEE

– Embedded• Devido a sua natureza modular ele pode ser embutido dentro de

uma aplicação.• Aplicações podem instanciá-lo e utilizá-lo com frameworks de

Dependency Injection.

Arquitetura do HornetQ

• Tipos de Uso– Iniciando o servidor embedded