I’ve been getting a lot of complains lately that my blog is very slow. I experienced it myself too, but I couldn’t recall which changes caused it. I checked all logs and configurations and everything looked just fine.
I asked Vladimir Ivaschenko to help me track down the problem. He is known as The Master of strace, so I was pretty sure that he would be help me. And I was right.
Within minutes, we found out that problems were caused by del.icio.us Smart Tagging plugin that I have installed not so long ago. With plugin activated, wget would take anywhere from 15 to 90 seconds to load the front page of the site. Deactivating the plugin, makes wget finish in less than 3 seconds. I consider the difference to be big enough for the functionality that this plugin brings in, so I disabled it. Maybe I will use it later again, when things get faster.
Thanks a lot Vladimir!
Excellent. I really would like to see the procedure how you made it, even roughly. It’s extremely interesting to me.
Well, the first thing to do is to check all Apache and MySQL logs for errors and other problem reports. In my case we didn’t find anything. Than we checked what MySQL was doing using
show processlist
command while refreshing the main page of the site. This way we were trying to catch any long queries, but nothing was spotted.Than we decided to
strace
the Apache. In order to do so, I stopped the service and started apache in debug mode (httpd -X
). First we wanted to see if it will report any problems on its own. It didn’t, so westrace
d it.The command we used was something like
strace -f -t -p $HTTPD_PID
. With-t
option we could see the timestamps along with what was going on. The longest period of about 15 seconds had “deliciosTag” string all over it.I disabled the plugin and we checked the performance, which showed a huge difference.
Let’s it.