Wildfly 
Em alta disponibilidade!
Oi! 
Hanneli (a.k.a. @hannelita)! 
Desenvolvedora @Codeminer42! 
HIRING 
Café, Lego, Pokémon e bichos <3
Yet another application server?
O que *NÃO* vamos ver aqui 
Evangelização de empresas e tecnologias! 
Tecnologia A é melhor que B! 
Wildfly é perfeito! 
T...
O que *vamos* ver aqui 
Um pouco sobre servidores Java ao longo 
dos últimos 5 anos! 
Como o JBoss 7 mudou algumas coisas ...
Lá pra 2006 
Vamos fazer o projeto com Java! 
IDE 
Código 
Server
Lá pra 2006
Lá pra 2006 
Quase todos os servidores Java EE: 
Consumiam muita RAM (subiam muitos 
recursos de uma vez)! 
Tinham mecanis...
Lá pra 2006
Em 2011 
A comunidade queria um servidor que: 
Subisse rápido! 
Sem 3894398237 XMLs! 
Maneira fácil de fazer hot deploy! 
...
Em 2011
Em 2011
JBoss AS 7 
O servidor vai startar. 
SOBE TUDO AÍ! 
JSF Jax-ws Jax-rs 
JPA JMS Log EJB JCA
JBoss AS 7 
Sobe só o que precisa… 
JSF Jax-ws Jax-rs 
funções 
mínimas 
JPA JMS Log EJB JCA
JBoss AS 7 
Sobe só o que precisa… 
funções 
mínimas 
Modular Ser vice Container! 
MSC 
JSF Jax-ws Jax-rs 
JPA JMS Log EJB...
JBoss AS 7 e o MSC
JBoss AS 7 e o MSC 
Start rápido! 
Menor consumo de RAM! 
Melhor gerenciamento de memória
JBoss AS 5 
XML para JMS! 
XML para datasource! 
XML para cluster! 
XML para cache de segundo nível! 
XML para EJBs
JBoss AS 5
JBoss AS 7 
1 ou 2 arquivos de configuração principais! 
standalone.xml ou standalone-*.xml! 
domain.xml + host.xml
JBoss AS 7
JBoss AS 7 
Hot deploy! 
Server
Mas…
Mas… 
Sobe só o que precisa… 
MSC 
porta http 
JSF Jax-ws Jax-rs 
funções 
mínimas 
porta http porta http porta http 
JPA ...
Overhead de portas HTTP!
Tomcat 
MSC 
porta http 
JSF Jax-ws Jax-rs 
funções 
mínimas 
porta http 
Tomcat 
porta http porta http porta http 
JPA JM...
Tomcat - na real 
MSC 
porta http 
porta http Tomcat 
JSF Jax-ws Jax-rs 
funções 
mínimas 
porta http porta http porta htt...
Tomcat - na real 
funções 
mínimas 
MSC 
porta http 
porta http Tomcat 
JSF Jax-ws Jax-rs 
porta http porta http porta htt...
JBoss AS 7 
funções 
mínimas 
Java EE 7 
MSC 
porta http 
JSF Jax-ws Jax-rs 
porta http porta http porta http 
JPA JMS Log...
É necessária uma nova versão 
do JBoss AS
JBoss AS 8 
Wildfly
Wildfly 
Java EE 7
Wildfly
Wildfly 
Tenta suavizar alguns problemas do JBoss AS 7
Wildfly 
Suavização #1 - portas HTTP 
Somente o overhead das por tas HTTP 
e HTTPs ao iniciar
Wildfly
Wildfly 
Suavização #2 - Web Container
Wildfly
Wildfly 
Novo Web Container! 
Undertow!
Undertow 
Blocking / Non- 
Blocking NIO 
Muito mais leve 
Servlet 3.1 
HTTP upgrade 
suporta 
mod_cluster 
Handlers 'lokõe...
Undertow Handlers 
handler == 
handler == 
'Trazer a ideia 
do MSC' para 
o Web Container
Wildfly + Undertow <3
Wildfly - quando não usar? 
Quando precisar de licença corporativa e 
suporte - não há ainda um 'EAP 7’ e se 
houver nos p...
Wildfly - Minha opinião
DISCLAIMER 
MINHA VISÃO 
Você não precisa concordar, discordar 
ou achar que estou xingando/elogiando
Wildfly - Minha opinião 
Muito rápido! 
Muito produtivo! 
Undertow é f*** <3! 
Modo Domain continua f***! 
Número consider...
Valeu!!! 
Perguntas? 
@hannelita 
hannelita@codeminer42.com
Referências 
http://www.slideshare.net/dandreadis/2013-11devoxxwild-flybof? 
qid=1ab6cb19-8903-4405-aee6-7d5e1e1c7f3f&v=de...
Apêndice - modo standalone 
Wildfly 
app1 
app2 
app3 
app4 
app5 
app6
Separar as aplicações! 
Wildfly Wildfly 
app1 app2 
Wildfly Wildfly 
app3 app4 
Wildfly Wildfly 
app5 app6 
Wildfly 
app1 ...
Controle Central 
Seria muito difícil controlar as instâncias separadamente 
Wildfly 
Wildfly 
Wildfly 
Wildfly
Controle Central 
Seria muito difícil controlar as instâncias separadamente 
Wildfly 
Wildfly 
Wildfly 
Wildfly 
Wildfly 
...
Próximos SlideShares
Carregando em…5
×

Wildfly em alta disponibilidade

921 visualizações

Publicada em

Palestra na trilha de JEE do TDC POA 2014

Publicada em: Tecnologia
0 comentários
2 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
921
No SlideShare
0
A partir de incorporações
0
Número de incorporações
14
Ações
Compartilhamentos
0
Downloads
18
Comentários
0
Gostaram
2
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Wildfly em alta disponibilidade

  1. 1. Wildfly Em alta disponibilidade!
  2. 2. Oi! Hanneli (a.k.a. @hannelita)! Desenvolvedora @Codeminer42! HIRING Café, Lego, Pokémon e bichos <3
  3. 3. Yet another application server?
  4. 4. O que *NÃO* vamos ver aqui Evangelização de empresas e tecnologias! Tecnologia A é melhor que B! Wildfly é perfeito! Tutorial chato e cansativo de instalação e JEE
  5. 5. O que *vamos* ver aqui Um pouco sobre servidores Java ao longo dos últimos 5 anos! Como o JBoss 7 mudou algumas coisas e gerou revolta em outras! Wildfly - suavizando os pontos de desgosto! Wildfly e JEE 7: features interessantes! Wildfly - quando não usar?! GIFs e imagens legais <3
  6. 6. Lá pra 2006 Vamos fazer o projeto com Java! IDE Código Server
  7. 7. Lá pra 2006
  8. 8. Lá pra 2006 Quase todos os servidores Java EE: Consumiam muita RAM (subiam muitos recursos de uma vez)! Tinham mecanismos pouco eficazes de hot deploy! Setup complicado (3489234783274 XMLs espalhados por aí)
  9. 9. Lá pra 2006
  10. 10. Em 2011 A comunidade queria um servidor que: Subisse rápido! Sem 3894398237 XMLs! Maneira fácil de fazer hot deploy! De preferência mais leve/ consumisse menos RAM
  11. 11. Em 2011
  12. 12. Em 2011
  13. 13. JBoss AS 7 O servidor vai startar. SOBE TUDO AÍ! JSF Jax-ws Jax-rs JPA JMS Log EJB JCA
  14. 14. JBoss AS 7 Sobe só o que precisa… JSF Jax-ws Jax-rs funções mínimas JPA JMS Log EJB JCA
  15. 15. JBoss AS 7 Sobe só o que precisa… funções mínimas Modular Ser vice Container! MSC JSF Jax-ws Jax-rs JPA JMS Log EJB JCA
  16. 16. JBoss AS 7 e o MSC
  17. 17. JBoss AS 7 e o MSC Start rápido! Menor consumo de RAM! Melhor gerenciamento de memória
  18. 18. JBoss AS 5 XML para JMS! XML para datasource! XML para cluster! XML para cache de segundo nível! XML para EJBs
  19. 19. JBoss AS 5
  20. 20. JBoss AS 7 1 ou 2 arquivos de configuração principais! standalone.xml ou standalone-*.xml! domain.xml + host.xml
  21. 21. JBoss AS 7
  22. 22. JBoss AS 7 Hot deploy! Server
  23. 23. Mas…
  24. 24. Mas… Sobe só o que precisa… MSC porta http JSF Jax-ws Jax-rs funções mínimas porta http porta http porta http JPA JMS Log EJB JCA
  25. 25. Overhead de portas HTTP!
  26. 26. Tomcat MSC porta http JSF Jax-ws Jax-rs funções mínimas porta http Tomcat porta http porta http porta http JPA JMS Log EJB JCA
  27. 27. Tomcat - na real MSC porta http porta http Tomcat JSF Jax-ws Jax-rs funções mínimas porta http porta http porta http JPA JMS Log EJB JCA
  28. 28. Tomcat - na real funções mínimas MSC porta http porta http Tomcat JSF Jax-ws Jax-rs porta http porta http porta http JPA JMS Log EJB JCA
  29. 29. JBoss AS 7 funções mínimas Java EE 7 MSC porta http JSF Jax-ws Jax-rs porta http porta http porta http JPA JMS Log EJB JCA
  30. 30. É necessária uma nova versão do JBoss AS
  31. 31. JBoss AS 8 Wildfly
  32. 32. Wildfly Java EE 7
  33. 33. Wildfly
  34. 34. Wildfly Tenta suavizar alguns problemas do JBoss AS 7
  35. 35. Wildfly Suavização #1 - portas HTTP Somente o overhead das por tas HTTP e HTTPs ao iniciar
  36. 36. Wildfly
  37. 37. Wildfly Suavização #2 - Web Container
  38. 38. Wildfly
  39. 39. Wildfly Novo Web Container! Undertow!
  40. 40. Undertow Blocking / Non- Blocking NIO Muito mais leve Servlet 3.1 HTTP upgrade suporta mod_cluster Handlers 'lokões'!
  41. 41. Undertow Handlers handler == handler == 'Trazer a ideia do MSC' para o Web Container
  42. 42. Wildfly + Undertow <3
  43. 43. Wildfly - quando não usar? Quando precisar de licença corporativa e suporte - não há ainda um 'EAP 7’ e se houver nos primeiros meses costuma ser instável! Quando a empresa tiver comprometimento com outras corporações de Java (Oracle, IBM)! Quando usar Java EE em versões antigas
  44. 44. Wildfly - Minha opinião
  45. 45. DISCLAIMER MINHA VISÃO Você não precisa concordar, discordar ou achar que estou xingando/elogiando
  46. 46. Wildfly - Minha opinião Muito rápido! Muito produtivo! Undertow é f*** <3! Modo Domain continua f***! Número considerável de bugs abertos :(! 1 XML to rule them all?
  47. 47. Valeu!!! Perguntas? @hannelita hannelita@codeminer42.com
  48. 48. Referências http://www.slideshare.net/dandreadis/2013-11devoxxwild-flybof? qid=1ab6cb19-8903-4405-aee6-7d5e1e1c7f3f&v=default&b=&from_search=4! http://www.slideshare.net/Codemotion/marchioni-wildfly2014? qid=1ab6cb19-8903-4405-aee6-7d5e1e1c7f3f&v=default&b=&from_search=6! http://www.slideshare.net/vineetreynolds/whats-new-in-wildfly-8! http://www.javacodegeeks.com/2014/01/entering-undertow-web-server.html
  49. 49. Apêndice - modo standalone Wildfly app1 app2 app3 app4 app5 app6
  50. 50. Separar as aplicações! Wildfly Wildfly app1 app2 Wildfly Wildfly app3 app4 Wildfly Wildfly app5 app6 Wildfly app1 app2 app3 app4 app5 app6 Separar uma aplicação em ! cada instância Replicar o servidor com todas as aplicações ! (cluster) Wildfly app1 app2 app3 app4 app5 app6 Wildfly app1 app2 app3 app4 app5 app6
  51. 51. Controle Central Seria muito difícil controlar as instâncias separadamente Wildfly Wildfly Wildfly Wildfly
  52. 52. Controle Central Seria muito difícil controlar as instâncias separadamente Wildfly Wildfly Wildfly Wildfly Wildfly Wildfly Wildfly Domain ./domain.sh

×