| ▲ | hunterpayne a day ago | |||||||
Because the jit will let the unoptimized code run a few (hundred) times to take measurements to know what needs to be optimized and how it needs to be optimized. This is a good solution and makes hotspot very effective. The problem is that it happens randomly a few minutes/seconds into the operation of the service. So you randomly have a big pause with the performance hit everytime you run the service. The upside is that this only happens once. But you have to plan for a big performance hit to requests which are unlucky enough to be called at the wrong time. | ||||||||
| ▲ | pretzellogician a day ago | parent | next [-] | |||||||
And this can generally be avoided as well, by doing "warmup" when starting your service (effectively, mock some calls), but before accepting requests. | ||||||||
| ||||||||
| ▲ | munchler a day ago | parent | prev [-] | |||||||
Ah, that’s interesting. I wasn’t aware that JIT-ing will do that sort of performance analysis first. Thank you for the explanation. | ||||||||