Operação e Monitoramento de Aplicações 
Java 
… e agora? 
Aldrin Leal, <aldrin@ingenieux.com.br>
Globalcode – Open4education 
Agenda 
Introdução 
public static void main(String[] args) 
Mas e ai?
Globalcode – Open4education 
Introdução 
Aldrin Leal 
Protroll 
Projetos / Experiência em Ops 
Outras Áreas: 
Cloud 
ALM 
Big Data
Globalcode – Open4education 
Bomdiaê!
Globalcode – Open4education 
Desisti do Application 
Server 
O Modelo não funciona 
Tenho pouco controle 
Dissonância: Dev x Admin
Globalcode – Open4education 
O que seria o Application 
Server? 
Implementação do Java EE 
Oferece 
XML, Json, Configuração, Validação (meh) 
RDBMS, Transações (okokokokokokok) 
Web, JSF 
Remoting
Globalcode – Open4education 
E sem o appserver? 
O Mundo existe! 
Netty / Jetty Embarcado / API HTTP Java 
Outros Application Servers 
OSGi 
java –jar
Globalcode – Open4education 
Mas como? 
Estudo de Caso com o Dropwizard 
Jar 
“fat jar” 
Configuração 
…. 
Lucro!
Globalcode – Open4education 
E como manter? 
Logging 
Logback, sempre 
Logback{,-test}.xml 
Configuração 
Dropmetrics / Jackson 
Typesafe Config 
Metrics 
Histograms, Counters 
Reporters (Ganglia, JMX, Console)
Globalcode – Open4education 
Mas tá travando! 
Profiler 
Mission Control
Globalcode – Open4education 
Mas e os serviços? 
Upstart, Systemd 
Hashdot 
Java Service Wrapper 
Docker 
Deployment vs Downtime 
Zookeeper? 
Thrift?
Conclusão: 
Fugir do AppServer é possível 
Mas você precise conferir alguns aspectos 
Tenha um carinho grande pro seu sysadmin 
Globalcode – Open4education
Globalcode – Open4education 
Dúvidas?
Globalcode – Open4education 
Obrigado

Operação e Monitoramento de Aplicações Java... e agora?