O documento compara os servidores de aplicação Java EE gratuitos JBoss e Glassfish. Ele descreve que o Glassfish é mais leve, rápido e suporta melhor o Java EE, enquanto o JBoss é mais lento mas ainda amplamente utilizado, especialmente para aplicações robustas. O autor conclui que vale a pena testar ambos para avaliar qual se adapta melhor ao problema.
2. Motivação
• Até hoje apenas utilizei o JBoss.
• Será que é a melhor opção?
• Será que existem outros JEE Application
Servers gratuitos bons?
• O que levou as pessoas a escolherem o Jboss?
• Vou acreditar nisso assim mesmo?
5. Glassfish x JBoss
• Faremos um comparativo entre os 2. Como
base serão utilizadas a versão 6 do Jboss e
3.0.1 do Glassfish
• Iremos comparar características e o
desempenho de ambos.
• No final, irei discutir um pouco sobre quem
utiliza cada um e qual a tendência.
6. Suporte ao Java EE
• Glassfish
– Primeiro certificado para Java EE 5.
– Na versão 3 suporta completamente o EE 6
• Jboss
– 3 anos após o Glassfish tornou-se certificado em
Java EE 5.
– O Jboss 6 suporta apenas a parte Web do JEE 6.
7. Suporte comercial
• O Glassfish 3.x possui suporte
comercial, enquanto que o Jboss 6 não possui.
8. Integração com IDE
• Nesse ponto, ambos se equivalem.
• Se integram ao Eclipse e NetBeans.
9. Administração
• Glassfish
– Web-based
– CLI
– REST-based
• Jboss
– Web-based
• O Jboss 7 já possui as mesmas facilidades do
Glassfish.
11. Suporte
• O Glassfish possui uma ferramenta para
atualização do mesmo, diferente do jboss.
• A documentação do Glassfish também é mais
extensa.
• Por outro lado, a comunidade que utiliza o
Jboss é maior.
12. Performance
• Foram analisados as seguintes métricas:
– Tempo de início “vazio”;
– Uso de memória “vazio” (heap e PermGen);
– Tempo de deploy do App;
– Tempo de reínicio Server + App;
– Uso de memória Server + App;
– Tempo de redeploy do App;
13. Comparação
Glassfish Jboss
Tempo de início “vazio” (s) 3,1 s 12s
Uso de memória “vazio” - heap (MB) 37 MB 100 MB
Uso de memória “vazio” - PermGen (MB) 28 MB 70 MB
Tempo de deploy do App (s) 13 s 30 s
Tempo de reínicio Server + App (s) 15 s 47 s
Uso de memória Server + App - heap (MB) 156 MB 236 MB
Uso de memória Server + App - PermGen (MB) 83 MB 175 MB
Tempo de redeploy do App (s) 10 s 30 s
14. Quem usa JBoss
• NYSE Euronext (Grupo de Bolsas de valores da
Europa e EUA);
• Sprint Nextel (Telecomunicações); e
• Rancore Technologies (Telecomunicações);
15. Quem usa o Glassfish
• ESPN;
• Jenzabar (Provedora de serviços para
educação);
• Guia da Semana (Guia brasileiro sobre
cinema, restaurante, bares, ...); e
• Parleys.com (e-learning);
16. Conclusões
• Ambos são utilizados por grandes
empresas, em diferentes tipos de negócio.
• O Jboss é utilizado em negócios mais robustos.
• Entretanto, cerca de 73% dos novos projetos
estão sendo feitos utilizando o Glassfish.
• Apesar da lentidão do Jboss 6, aparentemente
a versão 7 evolui bastante nesse ponto.
17. E a pergunta inicial
• Então, continua sem uma resposta concreta!!
• Divido minha resposta em alguns tópicos:
– Apesar de ser lento e consumir muita memória, é
amplamente utilizado no mercado.
– Além disso, tem 8 anos de vida, sempre com algum
destaque.
– Por outro lado, o Glassfish é mantido pela Oracle, que
é quem mantem o Java, logo, há uma integração
maior.
– Além disso, o Glassfish é mais leve e rápido e está
crescendo em participação.
18. Fim
• Finalizando, não estamos errados em utilizar o
Jboss.
• Entretanto, vale realizar algum piloto com o
Glassfish, para avaliarmos melhor sua
adequação ao nosso problema.