How can I find a bottleneck in a multithreaded service?

I am trying to find the bottleneck of multithreaded service. I used ab with -c 100 and watched a TPS of about 350. The question is that the maximum processor load is 70% and the memory is 10%. So it looks like it is not connected to the CPU or memory. This does not make disk or network I / O. How to determine what a bottleneck is?

+3
source share
1 answer

Do you have deadlock threads awaiting each other? Do you have threads waiting for database locks? Unobtrusive threads can often be the bottleneck in the fact that the system seems to slow down or wait, but you will not always see the resources consumed.

+1
source

Source: https://habr.com/ru/post/1752130/


All Articles