jvm performance monitoring with the nashorn javascript engine
DESCRIPTION
Monitorando a Maquina Virtual Java durante a execucao de uma aplicacao JavascriptTRANSCRIPT
![Page 1: JVM Performance Monitoring with the Nashorn Javascript engine](https://reader036.vdocuments.net/reader036/viewer/2022062300/559043141a28ab3d4a8b4630/html5/thumbnails/1.jpg)
Nashorn & Monitoramet
o da JVMMonitorando a Maquina Virtual Java durante a
execucao de uma aplicacao Javascript
![Page 2: JVM Performance Monitoring with the Nashorn Javascript engine](https://reader036.vdocuments.net/reader036/viewer/2022062300/559043141a28ab3d4a8b4630/html5/thumbnails/2.jpg)
@TheMarceloR Sou de Fortaleza, Ceara Boa experiencia com Java Engenheiro de Suporte Se aventurando na Irlanda Possuo algumas certificacoes:
SCJP, LPIC, ITIL, etc.
![Page 3: JVM Performance Monitoring with the Nashorn Javascript engine](https://reader036.vdocuments.net/reader036/viewer/2022062300/559043141a28ab3d4a8b4630/html5/thumbnails/3.jpg)
Agenda Monitorando a JVM (Performance & Benchmarking)
A nova ‘engine’ de JS da JVM: Nashorn Invokedynamic
Monitoramento Javascript – analisando…
Thread Dumps Memory Dumps
![Page 4: JVM Performance Monitoring with the Nashorn Javascript engine](https://reader036.vdocuments.net/reader036/viewer/2022062300/559043141a28ab3d4a8b4630/html5/thumbnails/4.jpg)
Monitorando a JVM Porque nos fazemos isso?
Performance Benchmarking
Ferramentas Profilers
JRockit Mission Control Visual VM
Utilitarios de linha de comando jmap jstack
![Page 5: JVM Performance Monitoring with the Nashorn Javascript engine](https://reader036.vdocuments.net/reader036/viewer/2022062300/559043141a28ab3d4a8b4630/html5/thumbnails/5.jpg)
DEMO – Monitorando a JVM
![Page 6: JVM Performance Monitoring with the Nashorn Javascript engine](https://reader036.vdocuments.net/reader036/viewer/2022062300/559043141a28ab3d4a8b4630/html5/thumbnails/6.jpg)
Nashorn Pequeno “disclaimer”: Eu nao sou um early
adopter!
Nashorn = ‘Rhinoceros‘ em Alemao 100% implementado com ’invokedynamic’ Segue 100% da especificação ECMA-262 5.1
Mais rapido e mais ‘compliant’ que RhinoJS
Alguns nomes para procurar no Google: Jim Laskey (Multi-Lang lead) Marcus Lagergren (Tech engineer) Attila Szegedi (Nashorn developer)
![Page 7: JVM Performance Monitoring with the Nashorn Javascript engine](https://reader036.vdocuments.net/reader036/viewer/2022062300/559043141a28ab3d4a8b4630/html5/thumbnails/7.jpg)
DEMO - Nashorn
![Page 8: JVM Performance Monitoring with the Nashorn Javascript engine](https://reader036.vdocuments.net/reader036/viewer/2022062300/559043141a28ab3d4a8b4630/html5/thumbnails/8.jpg)
Invokedynamic Chamada normal
Opcode UsoInvokestatic For static methods
Invokevirtual Para metodos nao-privados
Invokespecial Para instancia privada
Invokeinterface Para o recebedor que implementa a interface
![Page 9: JVM Performance Monitoring with the Nashorn Javascript engine](https://reader036.vdocuments.net/reader036/viewer/2022062300/559043141a28ab3d4a8b4630/html5/thumbnails/9.jpg)
Invokedynamic Chamada dinâmica
![Page 10: JVM Performance Monitoring with the Nashorn Javascript engine](https://reader036.vdocuments.net/reader036/viewer/2022062300/559043141a28ab3d4a8b4630/html5/thumbnails/10.jpg)
DEMO - JVM Scripting
![Page 11: JVM Performance Monitoring with the Nashorn Javascript engine](https://reader036.vdocuments.net/reader036/viewer/2022062300/559043141a28ab3d4a8b4630/html5/thumbnails/11.jpg)
Monitorando Java x Javascript Thread Dumps Memory Dumps
![Page 12: JVM Performance Monitoring with the Nashorn Javascript engine](https://reader036.vdocuments.net/reader036/viewer/2022062300/559043141a28ab3d4a8b4630/html5/thumbnails/12.jpg)
DEMO – Nashorn App
![Page 13: JVM Performance Monitoring with the Nashorn Javascript engine](https://reader036.vdocuments.net/reader036/viewer/2022062300/559043141a28ab3d4a8b4630/html5/thumbnails/13.jpg)
Perguntas?