====================================================================
Published: 10 November 2022
Tags: aws, cpu, java, microservices, optimization
Vadim Filanovsky and Harshad Sane discuss how a microservice was moved to a larger AWS instance size in order to increase performance, but the results were far from the desired goal. Through further investigation, it was discovered that there was a strange pattern in the CPU and latency metrics between nodes.
Some highlights:
- A larger instance type didn't solve the problem
- Flame graphs can be used to compare CPU performance
- The root cause was “false sharing,” where 2 independent variables share a cache line