SlideShare ist ein Scribd-Unternehmen logo
1 von 60
Downloaden Sie, um offline zu lesen
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
Jboss eap 6
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 eap 6
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 Rocha
elvis.rocha@tecnisys.com.br
twitter.com/elvisnaomorreu

Weitere ähnliche Inhalte

Was ist angesagt?

[Devil's camp 2019] 혹시 Elixir 아십니까? 정.말.갓.언.어.입.니.다
[Devil's camp 2019] 혹시 Elixir 아십니까? 정.말.갓.언.어.입.니.다[Devil's camp 2019] 혹시 Elixir 아십니까? 정.말.갓.언.어.입.니.다
[Devil's camp 2019] 혹시 Elixir 아십니까? 정.말.갓.언.어.입.니.다KWON JUNHYEOK
 
Rails Request & Middlewares
Rails Request & MiddlewaresRails Request & Middlewares
Rails Request & MiddlewaresSantosh Wadghule
 
Perforce convergence vs divergence
Perforce convergence vs divergencePerforce convergence vs divergence
Perforce convergence vs divergenceEric Patey
 
엘라스틱서치, 로그스태시, 키바나
엘라스틱서치, 로그스태시, 키바나엘라스틱서치, 로그스태시, 키바나
엘라스틱서치, 로그스태시, 키바나종민 김
 
Service workers
Service workersService workers
Service workersjungkees
 
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유Hyojun Jeon
 
Spring HATEOAS
Spring HATEOASSpring HATEOAS
Spring HATEOASYoann Buch
 
Reducing Microservice Complexity with Kafka and Reactive Streams
Reducing Microservice Complexity with Kafka and Reactive StreamsReducing Microservice Complexity with Kafka and Reactive Streams
Reducing Microservice Complexity with Kafka and Reactive Streamsjimriecken
 
Xeon dとlagopusと、pktgen dpdk
Xeon dとlagopusと、pktgen dpdkXeon dとlagopusと、pktgen dpdk
Xeon dとlagopusと、pktgen dpdkMasaru Oki
 
Luft : 10억 데이터를 10초만에 쿼리하는 DB 개발기
Luft : 10억 데이터를 10초만에 쿼리하는 DB 개발기Luft : 10억 데이터를 10초만에 쿼리하는 DB 개발기
Luft : 10억 데이터를 10초만에 쿼리하는 DB 개발기Hyojun Kim
 
GraphQL in Action - REST와 이별할 때 생각해야 하는 것들
GraphQL in Action - REST와 이별할 때 생각해야 하는 것들GraphQL in Action - REST와 이별할 때 생각해야 하는 것들
GraphQL in Action - REST와 이별할 때 생각해야 하는 것들Kivol
 
Spring Boot and REST API
Spring Boot and REST APISpring Boot and REST API
Spring Boot and REST API07.pallav
 
[NDC17] Kubernetes로 개발서버 간단히 찍어내기
[NDC17] Kubernetes로 개발서버 간단히 찍어내기[NDC17] Kubernetes로 개발서버 간단히 찍어내기
[NDC17] Kubernetes로 개발서버 간단히 찍어내기SeungYong Oh
 
Spring Boot Interview Questions | Edureka
Spring Boot Interview Questions | EdurekaSpring Boot Interview Questions | Edureka
Spring Boot Interview Questions | EdurekaEdureka!
 
Design Best Practices for High Availability in Load Balancing
Design Best Practices for High Availability in Load BalancingDesign Best Practices for High Availability in Load Balancing
Design Best Practices for High Availability in Load BalancingAvi Networks
 
Design Patterns: From STUPID to SOLID code
Design Patterns: From STUPID to SOLID codeDesign Patterns: From STUPID to SOLID code
Design Patterns: From STUPID to SOLID codePaulo Gandra de Sousa
 

Was ist angesagt? (20)

[Devil's camp 2019] 혹시 Elixir 아십니까? 정.말.갓.언.어.입.니.다
[Devil's camp 2019] 혹시 Elixir 아십니까? 정.말.갓.언.어.입.니.다[Devil's camp 2019] 혹시 Elixir 아십니까? 정.말.갓.언.어.입.니.다
[Devil's camp 2019] 혹시 Elixir 아십니까? 정.말.갓.언.어.입.니.다
 
Rails Request & Middlewares
Rails Request & MiddlewaresRails Request & Middlewares
Rails Request & Middlewares
 
Perforce convergence vs divergence
Perforce convergence vs divergencePerforce convergence vs divergence
Perforce convergence vs divergence
 
Json Web Token - JWT
Json Web Token - JWTJson Web Token - JWT
Json Web Token - JWT
 
엘라스틱서치, 로그스태시, 키바나
엘라스틱서치, 로그스태시, 키바나엘라스틱서치, 로그스태시, 키바나
엘라스틱서치, 로그스태시, 키바나
 
Service workers
Service workersService workers
Service workers
 
Maven ppt
Maven pptMaven ppt
Maven ppt
 
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
[NDC18] 야생의 땅 듀랑고의 데이터 엔지니어링 이야기: 로그 시스템 구축 경험 공유
 
Spring HATEOAS
Spring HATEOASSpring HATEOAS
Spring HATEOAS
 
Reducing Microservice Complexity with Kafka and Reactive Streams
Reducing Microservice Complexity with Kafka and Reactive StreamsReducing Microservice Complexity with Kafka and Reactive Streams
Reducing Microservice Complexity with Kafka and Reactive Streams
 
使用 Controller
使用 Controller使用 Controller
使用 Controller
 
Xeon dとlagopusと、pktgen dpdk
Xeon dとlagopusと、pktgen dpdkXeon dとlagopusと、pktgen dpdk
Xeon dとlagopusと、pktgen dpdk
 
Luft : 10억 데이터를 10초만에 쿼리하는 DB 개발기
Luft : 10억 데이터를 10초만에 쿼리하는 DB 개발기Luft : 10억 데이터를 10초만에 쿼리하는 DB 개발기
Luft : 10억 데이터를 10초만에 쿼리하는 DB 개발기
 
GraphQL in Action - REST와 이별할 때 생각해야 하는 것들
GraphQL in Action - REST와 이별할 때 생각해야 하는 것들GraphQL in Action - REST와 이별할 때 생각해야 하는 것들
GraphQL in Action - REST와 이별할 때 생각해야 하는 것들
 
Spring Boot and REST API
Spring Boot and REST APISpring Boot and REST API
Spring Boot and REST API
 
[NDC17] Kubernetes로 개발서버 간단히 찍어내기
[NDC17] Kubernetes로 개발서버 간단히 찍어내기[NDC17] Kubernetes로 개발서버 간단히 찍어내기
[NDC17] Kubernetes로 개발서버 간단히 찍어내기
 
Context Mapping In Action
Context Mapping In ActionContext Mapping In Action
Context Mapping In Action
 
Spring Boot Interview Questions | Edureka
Spring Boot Interview Questions | EdurekaSpring Boot Interview Questions | Edureka
Spring Boot Interview Questions | Edureka
 
Design Best Practices for High Availability in Load Balancing
Design Best Practices for High Availability in Load BalancingDesign Best Practices for High Availability in Load Balancing
Design Best Practices for High Availability in Load Balancing
 
Design Patterns: From STUPID to SOLID code
Design Patterns: From STUPID to SOLID codeDesign Patterns: From STUPID to SOLID code
Design Patterns: From STUPID to SOLID code
 

Andere mochten auch

Aula04 - EAP e Cronograma
Aula04 - EAP e CronogramaAula04 - EAP e Cronograma
Aula04 - EAP e CronogramaDaniela Brauner
 
Tdp+2011 2+aula+5+-+eap+-+estrutura+analítica+do+projeto
Tdp+2011 2+aula+5+-+eap+-+estrutura+analítica+do+projetoTdp+2011 2+aula+5+-+eap+-+estrutura+analítica+do+projeto
Tdp+2011 2+aula+5+-+eap+-+estrutura+analítica+do+projetoLuiz Navas
 
Ferramentas de gestão do tempo no Spider Project
Ferramentas de gestão do tempo no Spider ProjectFerramentas de gestão do tempo no Spider Project
Ferramentas de gestão do tempo no Spider ProjectPeter Mello
 
Estrutura Analítica do Projeto (EAP)
Estrutura Analítica do Projeto (EAP)Estrutura Analítica do Projeto (EAP)
Estrutura Analítica do Projeto (EAP)Alessandro Fazenda
 

Andere mochten auch (7)

Modelos eap
Modelos eapModelos eap
Modelos eap
 
Aula04 - EAP e Cronograma
Aula04 - EAP e CronogramaAula04 - EAP e Cronograma
Aula04 - EAP e Cronograma
 
EAP
EAPEAP
EAP
 
Curso gerenciamento de escopo aula 3
Curso gerenciamento de escopo aula 3Curso gerenciamento de escopo aula 3
Curso gerenciamento de escopo aula 3
 
Tdp+2011 2+aula+5+-+eap+-+estrutura+analítica+do+projeto
Tdp+2011 2+aula+5+-+eap+-+estrutura+analítica+do+projetoTdp+2011 2+aula+5+-+eap+-+estrutura+analítica+do+projeto
Tdp+2011 2+aula+5+-+eap+-+estrutura+analítica+do+projeto
 
Ferramentas de gestão do tempo no Spider Project
Ferramentas de gestão do tempo no Spider ProjectFerramentas de gestão do tempo no Spider Project
Ferramentas de gestão do tempo no Spider Project
 
Estrutura Analítica do Projeto (EAP)
Estrutura Analítica do Projeto (EAP)Estrutura Analítica do Projeto (EAP)
Estrutura Analítica do Projeto (EAP)
 

Ähnlich wie Jboss eap 6

JBoss Fuse Service Works - O Fuse além da integração - PT-BR
JBoss Fuse Service Works - O Fuse além da integração - PT-BRJBoss Fuse Service Works - O Fuse além da integração - PT-BR
JBoss Fuse Service Works - O Fuse além da integração - PT-BRElvis Rocha
 
JBoss-WildFly - Avançado
JBoss-WildFly - AvançadoJBoss-WildFly - Avançado
JBoss-WildFly - AvançadoAdriano Schmidt
 
Java EE 6 e JBoss 6.0
Java EE 6 e JBoss 6.0Java EE 6 e JBoss 6.0
Java EE 6 e JBoss 6.0Edgar Silva
 
Java OO Middleware - JEE / EJB / RMI
Java OO Middleware - JEE / EJB / RMIJava OO Middleware - JEE / EJB / RMI
Java OO Middleware - JEE / EJB / RMIYitzhak Stone
 
Maratona JBoss 2010 - JBoss-ESB
Maratona JBoss 2010 - JBoss-ESBMaratona JBoss 2010 - JBoss-ESB
Maratona JBoss 2010 - JBoss-ESBDextra
 
JBUG Brasil - Desvendando as features do WildFly.
JBUG Brasil - Desvendando as features do WildFly.JBUG Brasil - Desvendando as features do WildFly.
JBUG Brasil - Desvendando as features do WildFly.Eduardo Medeiros
 
Arquitetura de um sistema crítico de alta disponibilidade com soluções open s...
Arquitetura de um sistema crítico de alta disponibilidade com soluções open s...Arquitetura de um sistema crítico de alta disponibilidade com soluções open s...
Arquitetura de um sistema crítico de alta disponibilidade com soluções open s...Daniel Destro Do Carmo
 
Como Sobreviver Com Java2
Como Sobreviver Com Java2Como Sobreviver Com Java2
Como Sobreviver Com Java2Saulo Arruda
 
ApresentaçãO Ejb (Enterprise Java Beans)
ApresentaçãO Ejb (Enterprise Java Beans)ApresentaçãO Ejb (Enterprise Java Beans)
ApresentaçãO Ejb (Enterprise Java Beans)mauriciopel
 
Introdução ao JEE
Introdução ao JEEIntrodução ao JEE
Introdução ao JEEJugVale
 
GlassFish, Maven, Cloud e o futuro do Java EE
GlassFish, Maven, Cloud e o futuro do Java EEGlassFish, Maven, Cloud e o futuro do Java EE
GlassFish, Maven, Cloud e o futuro do Java EEBruno Borges
 

Ähnlich wie Jboss eap 6 (20)

JBoss5 @ FISL
JBoss5 @ FISLJBoss5 @ FISL
JBoss5 @ FISL
 
JBoss Fuse Service Works - O Fuse além da integração - PT-BR
JBoss Fuse Service Works - O Fuse além da integração - PT-BRJBoss Fuse Service Works - O Fuse além da integração - PT-BR
JBoss Fuse Service Works - O Fuse além da integração - PT-BR
 
Flisolgo2010
Flisolgo2010Flisolgo2010
Flisolgo2010
 
JBoss-WildFly - Avançado
JBoss-WildFly - AvançadoJBoss-WildFly - Avançado
JBoss-WildFly - Avançado
 
Java EE 6 e JBoss 6.0
Java EE 6 e JBoss 6.0Java EE 6 e JBoss 6.0
Java EE 6 e JBoss 6.0
 
GUJavaSC - Mini-curso Java EE
GUJavaSC - Mini-curso Java EEGUJavaSC - Mini-curso Java EE
GUJavaSC - Mini-curso Java EE
 
Trabalho de sgbd
Trabalho de sgbdTrabalho de sgbd
Trabalho de sgbd
 
Java OO Middleware - JEE / EJB / RMI
Java OO Middleware - JEE / EJB / RMIJava OO Middleware - JEE / EJB / RMI
Java OO Middleware - JEE / EJB / RMI
 
Maratona JBoss 2010 - JBoss-ESB
Maratona JBoss 2010 - JBoss-ESBMaratona JBoss 2010 - JBoss-ESB
Maratona JBoss 2010 - JBoss-ESB
 
JBUG Brasil - Desvendando as features do WildFly.
JBUG Brasil - Desvendando as features do WildFly.JBUG Brasil - Desvendando as features do WildFly.
JBUG Brasil - Desvendando as features do WildFly.
 
Curso jsf
Curso jsfCurso jsf
Curso jsf
 
JBoss Fuse Workshop Desenvolvimento - Parte 1
JBoss Fuse Workshop Desenvolvimento - Parte 1JBoss Fuse Workshop Desenvolvimento - Parte 1
JBoss Fuse Workshop Desenvolvimento - Parte 1
 
Arquitetura de um sistema crítico de alta disponibilidade com soluções open s...
Arquitetura de um sistema crítico de alta disponibilidade com soluções open s...Arquitetura de um sistema crítico de alta disponibilidade com soluções open s...
Arquitetura de um sistema crítico de alta disponibilidade com soluções open s...
 
Como Sobreviver Com Java2
Como Sobreviver Com Java2Como Sobreviver Com Java2
Como Sobreviver Com Java2
 
EJB 3.1
EJB 3.1EJB 3.1
EJB 3.1
 
ApresentaçãO Ejb (Enterprise Java Beans)
ApresentaçãO Ejb (Enterprise Java Beans)ApresentaçãO Ejb (Enterprise Java Beans)
ApresentaçãO Ejb (Enterprise Java Beans)
 
Introdução a jsf
Introdução a jsfIntrodução a jsf
Introdução a jsf
 
Curso jsf
Curso jsfCurso jsf
Curso jsf
 
Introdução ao JEE
Introdução ao JEEIntrodução ao JEE
Introdução ao JEE
 
GlassFish, Maven, Cloud e o futuro do Java EE
GlassFish, Maven, Cloud e o futuro do Java EEGlassFish, Maven, Cloud e o futuro do Java EE
GlassFish, Maven, Cloud e o futuro do Java EE
 

Jboss eap 6

  • 1. JBoss EAP 6: Um novo conceito em middleware
  • 2. 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
  • 3. O que é um middleware e para que é usado
  • 4. 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
  • 5. Requisitos não funcionais ● Performance ● Disponibilidade ● Escalabilidade ● Segurança ● Distribuição ● Manutenção ● Gerenciamento ● Padrões abertos ● Suporte
  • 6. 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
  • 8. ● 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.
  • 9. Evolução dos servidores de aplicação Java
  • 11. 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
  • 12. 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
  • 13. 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
  • 15. 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
  • 17. 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
  • 18. Boot em 3 segundos!
  • 19. Como isso foi possível?
  • 20. 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
  • 25. Configuração com foco no usuário
  • 26. Interface de administração web e linha de comando
  • 28. 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
  • 32. 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
  • 34. 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
  • 36. 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
  • 37. JBoss AS vs. JBoss EAP
  • 39. Além do JBoss EAP 6
  • 40. 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)
  • 42. 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
  • 45. 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
  • 48. 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)
  • 49. JBoss ESB (SOA Platform)
  • 50. JBoss ESB (SOA Platform)
  • 51. 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)
  • 52. JBoss EDS (Enterprise Data Services)
  • 53. JBoss EDS (Enterprise Data Services)
  • 54. JBoss Portal (Baseado no EAP 6.1)
  • 55. JBoss Portal (Baseado no EAP 6.1)
  • 56. 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
  • 59. 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