Jboss eap 6

Post on 29-Jun-2015

1.046 views 6 download

description

JBoss EAP 6 - Um novo conceito em middleware

Transcript of Jboss eap 6

JBoss EAP 6:Um novo conceito em middleware

JBoss EAP 6

• O que é um middleware e para que é usado

• Um breve histórico do JBoss

• JBoss EAP 6

• Community vs. Enterprise

• Além do JBoss EAP 6

O que é um middleware e para que é usado

Plataforma

● Infra-estrutura / sistema operacional

● Interação entre o humano e a máquina

Aplicativos

● Ênfase no design e nas funcionalidades (Requisitos funcionais)

● Foco no objetivo do seu negócio

Requisitos não funcionais● Performance

● Disponibilidade

● Escalabilidade

● Segurança

● Distribuição

● Manutenção

● Gerenciamento

● Padrões abertos

● Suporte

Mais que um servidor de aplicação● Como se conectar a um LDAP?

● Como se conectar a sistemas legados?

Com o JavaEE tudo isso está encapsulado e pronto para o uso

● O desenvolvedor se concentra somente nos problemas do negócio

● Menor tempo de desenvolvimento, menor custo

Um breve histórico do JBoss

● Fundação:

● Projeto EJBOSS fundado em 1999 por Marc Fleury

● Aquisição:

● Red Hat adquiriu o JBoss em junho de 2006

● Missão: Oferecer uma linha de produtos de middleware para ajudar as organizações a acelerar suas habilidades em desenvolver, deployar, integrar e gerenciar suas aplicações.

Evolução dos servidores de aplicação Java

JBoss Timeline

JBoss AS 6.0 / 6.1

● JavaEE 6 Web Profile++ ou Full Profile-- (nem um nem outro)● Baseado na versão 5.x (Microcontainer)● Mais leve que o AS 5● Trampolim para o AS 7

E quanto as novas tecnologias?

● HornetQ (JMS)● Infinispan (Cache)● Apache CXF (Web Services)● mod_cluster● OSGI

Decisão:

● O JBoss AS 6 não virará um produto Enterprise

JBoss AS 7 - Desafios

● A difícil tarefa de se olhar no espelho

● Menor, mais rápido, mais sexy

● Tempo de startup e uso de memória

● Melhorar o gerenciamento

● Simplificar a configuração

● Remover camadas de abstração

● Remover o legado

● Modularizar

JBoss AS 7

● Lançado em julho de 2011, 6 meses após o AS 6

● Código completamente reescrito

● JBoss AS 7.0.1 - agosto de 2011

● JBoss AS 7.0.2 - setembro de 2011

● JBoss AS 7.1 - fevereiro de 2012 - Java EE 6 Full

profile certified

JBoss EAP 6.0

● Junho de 2012 - Java EE 6 Full profile certified

JBoss EAP 6

Principais características:

● Rápido e leve

● Modular, baseado em OSGI

● Configuração unificada, voltada para o usuário

Não mais aquele monte de arquivo XML

● Múltiplas interfaces de gerenciamento

CLI, HTTP API, REST API, Console

● Suporte ao gerenciamento de vários nós (modo domain)

● Cloud-ready

Arquitetura do JBoss EAP 6

Principais características do MSC:

● Pequeno, leve e eficiente

Jar de 216kb, pouquíssima memória

● Tarefas concorrentes e altamente escaláveis

● Serviços baseados em interface

Não requer uso de XML nem usa reflection

● Somente dois estados, sem estados de transição

UP e DOWN

● Múltiplos modos de startup dos serviços

Ativo, passivo, sob demanda, lazy e never

Boot em 3 segundos!

Como isso foi possível?

Como isso foi possível?

●Startup e deploy concorrente (threads)

●Lookup de recursos e classloading mais rápidos

●Indexação de anotações (API Annotations)

●Cache dos metadados de reflexão (API Reflection)

●Serviços sob demanda (Lazy loading)

●Parse de arquivos XML através da API Stax

●Feito a partir do zero

Performance

Tempo de boot:

Consumo de memória:

Administração

Configuração com foco no usuário

Interface de administração web e linha de comando

Modularização

Modularização

● Pequeno, leve e eficiente

Duas bibliotecas iguais de versões diferentes agora podem conviver no servidor

● Classloading modular

Modulos só conseguem ver o que é definido

● Definição de módulos externos

Não é preciso abrir o JAR

● Dinâmico

Os módulos podem ser redefinidos

● Extensível

JBoss OSGI implementado nos próprios módulos

JBoss Modules

JBoss Modules

Gerenciamento

Dois modos de operação

● Standalone

Modo tradicional (um servidor por JVM simples)

Facilidades de gerenciamento por ser uma JVM

Sem controle do ciclo de vida via gerenciamento (somente shutdown)

● Domain

Multi-JVM, vários servidores

Gerenciamento coordenado pelo Domain Controller

Várias instâncias (JVM's) por Host

Controle total do ciclo de vida dos servidores via Host Controller

Topologia modo Domain

JBoss EAP 6

● Versão 6.0 - junho de 2012

37 patches

● Versão 6.0.1 - dezembro de 2012

58 patches

● Versão 6.1.0 - maio de 2013

23 patches

● Versão 6.1.1 - setembro de 2013

3 patches

● Versão 6.2 Beta - outubro de 2013

Community vs. Enterprise

+

JBoss AS vs. JBoss EAP

● Community Project (JBoss AS / Wildfly)

Patrocinado pela comunidade JBoss/RedHat

Inovações em um ritmo muito rápido

Foco em novas funcionalidades

Não há suporte

● Enterprise Application Platform (JBoss EAP)

Criado a partir de pontos estáveis do JBoss Community

Integrado com o JBoss Developer Studio e o JBoss Operations Network

Rigorosamente testado (performance, escalabilidade, SpecJ, etc..)

Certificado em várias combinações de S.O., JVM e banco de dados

Ciclos cumulativos de patches de correção

Suportado por 5 anos + 2

JBoss AS vs. JBoss EAP

Além do JBoss EAP 6

Solução para gerenciamento do JBoss (monitorar, deployar e gerenciar) toda a linha de middleware JBoss (EAP, ESB, EDS, Apache, S.O., etc..)

Suporta alertas, mensagens, envio de traps, etc..

Recursos de aplicações (requisições, sessões, filas JMS, mensagens no Service Bus)

JBoss Operations Network (JON)

JBoss Operations Network (JON)

Ferramenta de desenvolvimento (IDE) para criação, teste e deploy de aplicações.

Inclui uma série de ferramentas com recursos e suporte para vários frameworks incluindo JavaEE 6, RichFaces, Java Server Faces (JSF), Enterprise Java Beans (EJB), Java Persistence API (JPA), Hibernate, JAX-RS, CDI, HTML 5 e várias outras novas tecnologias

Já incluido na subscrição do JBoss EAP

JBoss Developer Studio

JBoss Developer Studio

JBoss Developer Studio

Business Rule Management System (BRMS) é um sistema onde são definidas as regras de negócio e as lógicas de decisão dentro da organização.

Uma plataforma para modelagem de negócio

Separação da lógica de negócio dos dados

Facilidade de manutenção das regras de negócio

Mudanças dinâmicas e reuso das regras de negócio

JBoss BRMS

JBoss BRMS

JBoss Enterprise Service Bus (ESB) provê a infraestrutura necessária para o princípio da arquitetura orientada a serviços (SOA).

Provê orquestração de processos

Provê tradução de protocolos

Adapters, repositories, gerência de mudanças

Qualidade de serviços, qualidade de proteção (segurança)

Tudo é um serviço inclusive o Bus

JBoss ESB (SOA Platform)

JBoss ESB (SOA Platform)

JBoss ESB (SOA Platform)

JBoss Enterprise Data Services (EDS) permite a virtualização de dados, provê a união e integração de diferentes fontes de dados em uma fonte única de informação.

Diferentes fontes de dados (bases de dados, arquivos, aplicações, serviços, etc..)

Provê performance, segurança e integridade de dados

JBoss EDS (Enterprise Data Services)

JBoss EDS (Enterprise Data Services)

JBoss EDS (Enterprise Data Services)

JBoss Portal (Baseado no EAP 6.1)

JBoss Portal (Baseado no EAP 6.1)

Combina vários frameworks populares de desenvolvimento em uma simples solução.

Todos os componentes são testados, certificados e suportados para uso no JBoss.

Frameworks: Hibernate, JBoss Seam, GWT, RichFaces, Spring e Struts.

Já incluido na subscrição do JBoss EAP

JBoss Web Framework Kit

Novas tecnologias (JavaEE 6)

Novas tecnologias (JavaEE 6)

Novas tecnologias (Wildfly 8 - JavaEE 7)

Novas APIs• WebSockets, HTML 5, JSON, NIO async I/O• JCache, NoSQL, Concurrency Utilities

Novas versões das APIs existentes• JSF 2.2, JMS 2.0, JPA 2.1, EJB 3.2, CDI 1.1, Servlet 3.1, JAX-RS 2.0, JTA 1.2

Obrigado

Elvis Henrique Rochaelvis.rocha@tecnisys.com.brtwitter.com/elvisnaomorreu