A bunch of my customer's VPS's were having odd performance issues. After looking in the usual places, I found myself needing to dig deeper. Before I knew it, I was running vmstat and trying to make sense of the results.
Once I wrapped my head around how much time was being spent waiting for IO, I decided I needed to track down which processes which were the culprits for this. This seemed like an obvious thing to do, but I couldn't find the command to give me this information. Then I found this article: Troubleshooting High I/O Wait in Linux, and things really clicked.
To cut to the chase, the command I was looking for was simply:
for x in `seq 1 1 10`; do ps -eo state,pid,cmd | grep "^D"; echo "----"; sleep 5; done
Obvious, right?
Seriously, if you're struggling to make sense of how your system may be interacting with disk io, then go study this article.
Update: Actually, here's another really handy article to read: Linux File System Read Write Performance Test. You can run:
dd if=/dev/zero of=speedtest bs=64k count=3200 conv=fdatasync
To get a quick sense of how fast disk write speed is.
No comments:
Post a Comment