jpoint JPoint 2019 (05.04.2019 — 06.04.2019)

Java is slow: CodeCache edition

img

It has never been like this and now it is exactly the same again: production crashes! Or just runs slow. It may be JIT compiler did something unexpected. We’ll discuss how to manage its actions and how to analyse cases when something goes wrong.

It has never been like this and now it is exactly the same again: production crashes! Or just runs slow.

"Did you change anything?"

"No, we didn’t".

"Did it function properly before?"

"Yes, it did".

How we’re supposed to analyse this?

And if we got cluster and the second node generally runs slower than the rest?

Experience has shown that JIT compiler is to blame for everything (just joking). But JIT compiler could actually do its job in a different manner, and your application would run slow after a simple reboot.

In this talk, we’ll discuss how to manage JIT compiler’s actions and how to analyse cases when something goes wrong (obtain core dumps, write patches with OpenJDK, etc.).