When you have a performance problem to solve and your monitoring/profiling shows that out of 10 seconds of user request processing, you spend 8 seconds running a single database query or talking to an external REST system, then the problem’s root cause is clear, and the solution is simple: optimize that one slow query. But in many cases, there is no such obvious root cause.
Nikita Salnikov-Tarnovski presents several examples in which SLAs failed due to a multitude of fast operations, such as database queries, garbage collection, and file attribute checks. Nikita describes the challenges of applying the usual monitoring and profiling techniques when trying to detect such problems and explores how such problems can be spotted, verified, and remedied.
Nikita Salnikov-Tarnovski is the cofounder of JVM performance-monitoring product Plumbr, where he contributes as core developer and team lead. Besides his daily technical tasks of solving various problems, he is an active blogger, a three-time JavaOne Rock Star, and a frequent speaker at conferences such as JavaOne, Devoxx, GeeCON, JFokus, GeekOut, JPoint, and JEEConf.
©2016, O’Reilly UK Ltd • (800) 889-8969 or (707) 827-7019 • Monday-Friday 7:30am-5pm PT • All trademarks and registered trademarks appearing on oreilly.com are the property of their respective owners. • firstname.lastname@example.org