Among the main benefits, they allowed for increased density of applications deployed on each host. In the current scenario careful resource management becomes critical, and brings back some old problems, such as noisy neighbors, on the table.
One of the key phenomena that affects application performance in this context is throttling. We will dive into it, understanding how we can use it as a perfect indicator for saturation. Measuring throttling and its effect both to consumption metrics and end-user impact is critical but still hard.
We will introduce what is throttling and show how popular open-source and enterprise monitoring solutions address this problem. We will also try to identify new metrics to better understand when throttling is happening. Finally, by the use of benchmark Java applications, we will provide guidelines to effectively understand this important phenomenon and its impact on end users.