Seminário JBoss/WildFly - Avançado
Adriano Schmidt
adriano.schmidt@supero.com.br
Adriano Schmidt
• Arquiteto de software na Supero Tecnologia desde
2012 e programa em Java desde 2007
• Técnico em Informática - SENAI
• Faculdade de Adm. de Empresas - UNIVILLE
• Mestrado em Administração - UDESC (Cursando)
• SCJP; Cisco CCNA 1 e 2
• Já trabalhou em: SENAI, Datasul, Totvs
Agenda
• Introdução e História do JBoss/WildFly
• JBoss por dentro
• Apache HTTP Server
• Cluster
• Mãos na massa!
• Um pouquinho de tunning
JBUG Brasil
www.localhost8080.com.br
Introdução
• JBoss/Wildfly é um Application Server desenvolvido
em Java, que visa atender as especificações JavaEE.
• JBoss AS, JBoss EAP, WildFly
• Mantido pela RedHat e é gratuito (GPL)
• História
• EJBoss - 1999 (Enterprise Java Beans Open Source System)
• JBoss 1.0 - 2000
• JBoss 7.0 - 2011
• WildFly 8.0 - 2013
JBoss por dentro
• Arquitetura e Pastas
• Standalone x Domain
• Arquivo standalone.xml
• Subsystem (datasource, logging, secutiry)
• Profiles
• Portas: port-offset
Apache HTTP Server
• O que é um HTTP Server?
• Ele serve web pages. Espera requests de web browsers
(clientes) e responde enviando os dados requisitados de
volta.
• Apache HTTP Server é o HTTP Server mais
popular. Surgiu em 1996.
• Permite Load Balancer.
• Funciona como Proxy Reverso.
Cluster
• Clusterização permite que sejam rodados vários
Application Servers em paralelo.
• Os acessos são distribuídos pelos servers, e
mesmo se um server cair, a aplicação continua
acessível.
• Clusterização ajuda na escalabilidade e
performance. Você pode aumentar a performance
adicionando mais servidores no cluster.
Mãos na massa
• Ambiente:
• Apache HTTP Server na frente
• Um JBoss master e dois slaves (todos no modo domain)
• Projetos:
• Systemprops
• exibe propriedades da máquina para testar o load
balancer - System.getProperty("jboss.server.name")
• Cluster-example
• um EJB statefull para testar o cluster
Mãos na massa!
JBoss Master JBoss Server1 JBoss Server2
Apache HTTP Server
Cluster
Usuário
Um pouquinho de tunning
• Testes de desempenho para identificar gargalos
• JMeter, NewRelic, VisualVM, jConsole, entre outras.
• Escolha da JDK: JRockit!
• Memória: xms, xmx...
• Aumentar o pool de EJB
• http://localhost8080.blogspot.com.br/2013/11/tuning-ejb-pool-jboss-7.html
• Estratégias de load balancer
• Estratégias de garbage collector
• Se usar JSF, talvez migrar para o JSF 2.2
• http://localhost8080.blogspot.com.br/2013/06/jsf-22.html
Perguntas
Contato
Adriano Schmidt
adriano.schmidt@supero.com.br
(48) 9172-1216
(48) 3322-3636
www.supero.com.br

JBoss-WildFly - Avançado

  • 1.
    Seminário JBoss/WildFly -Avançado Adriano Schmidt adriano.schmidt@supero.com.br
  • 2.
    Adriano Schmidt • Arquitetode software na Supero Tecnologia desde 2012 e programa em Java desde 2007 • Técnico em Informática - SENAI • Faculdade de Adm. de Empresas - UNIVILLE • Mestrado em Administração - UDESC (Cursando) • SCJP; Cisco CCNA 1 e 2 • Já trabalhou em: SENAI, Datasul, Totvs
  • 3.
    Agenda • Introdução eHistória do JBoss/WildFly • JBoss por dentro • Apache HTTP Server • Cluster • Mãos na massa! • Um pouquinho de tunning
  • 4.
  • 5.
  • 6.
    Introdução • JBoss/Wildfly éum Application Server desenvolvido em Java, que visa atender as especificações JavaEE. • JBoss AS, JBoss EAP, WildFly • Mantido pela RedHat e é gratuito (GPL) • História • EJBoss - 1999 (Enterprise Java Beans Open Source System) • JBoss 1.0 - 2000 • JBoss 7.0 - 2011 • WildFly 8.0 - 2013
  • 7.
    JBoss por dentro •Arquitetura e Pastas • Standalone x Domain • Arquivo standalone.xml • Subsystem (datasource, logging, secutiry) • Profiles • Portas: port-offset
  • 8.
    Apache HTTP Server •O que é um HTTP Server? • Ele serve web pages. Espera requests de web browsers (clientes) e responde enviando os dados requisitados de volta. • Apache HTTP Server é o HTTP Server mais popular. Surgiu em 1996. • Permite Load Balancer. • Funciona como Proxy Reverso.
  • 9.
    Cluster • Clusterização permiteque sejam rodados vários Application Servers em paralelo. • Os acessos são distribuídos pelos servers, e mesmo se um server cair, a aplicação continua acessível. • Clusterização ajuda na escalabilidade e performance. Você pode aumentar a performance adicionando mais servidores no cluster.
  • 10.
    Mãos na massa •Ambiente: • Apache HTTP Server na frente • Um JBoss master e dois slaves (todos no modo domain) • Projetos: • Systemprops • exibe propriedades da máquina para testar o load balancer - System.getProperty("jboss.server.name") • Cluster-example • um EJB statefull para testar o cluster
  • 11.
    Mãos na massa! JBossMaster JBoss Server1 JBoss Server2 Apache HTTP Server Cluster Usuário
  • 12.
    Um pouquinho detunning • Testes de desempenho para identificar gargalos • JMeter, NewRelic, VisualVM, jConsole, entre outras. • Escolha da JDK: JRockit! • Memória: xms, xmx... • Aumentar o pool de EJB • http://localhost8080.blogspot.com.br/2013/11/tuning-ejb-pool-jboss-7.html • Estratégias de load balancer • Estratégias de garbage collector • Se usar JSF, talvez migrar para o JSF 2.2 • http://localhost8080.blogspot.com.br/2013/06/jsf-22.html
  • 13.
  • 14.