EID-8101 Everybody lies | Devoxx

Everybody lies

Conference

ssj Server Side Java

Room 5 - BestWestern

Tuesday at 09:00 - 10:00

Measuring right things at right places in an application is not only about good engineering practices and maintaining some vague SLAs. It is foremost about user experience and should impact strategic decisions at highest levels. In order to allocate time for improving performance metrics such as max latency and consistent response times we need to know their accurate value.

The problem with such metrics is that when using popular tools we get results that are not only inaccurate but also too optimistic.

During my presentation I will simulate services that require monitoring and show how gathered metrics differ from real numbers. All this while using what currently seems to be most popular metric pipeline - Graphite together with com.codahale metrics library - and get completely false results. We will learn to tune it and get much better accuracy. We will use JMeter to measure latency and observe how falsely reassuring the results are. We will check how graphite averages data just to helplessly watch important latency spikes disappear. Finally I will show how HdrHistogram helps in gathering reliable metrics. We will also run tests measuring performance of different metric classes

Tomasz Kowalczewski Tomasz Kowalczewski

For more than five years I was working on a distributed airline system that processed thousands of transactions per second. Now I work at Codewise focusing on real time big data processing backend powering our SaaS for online marketers. Interested in high volume and low latency services I also help with implementation of microservices in our company. Out of this work comes my quest for more adequate tools, frameworks and libraries that do not break under just moderate load requiring lots of investment in basic infrastructure code.