How Do You Do Performance Monitoring?

November 2, 2008

My team and I spent a lot of time investigating, monitoring, and tuning performance at Chesspark. We had to build a lot of our own tools for this such as our database profiler, and I suspect that most other people doing similar work have their own methods and tools. I was therefore thrilled to find a nice discussion of various methods and ideas for doing this on the Erlang questions mailing list.

Don’t let the fact that the discussion is among Erlang developers scare you off. Erlang is not magic, and these ideas are pretty applicable anywhere if you put your mind to it. For example, years ago I wrote a thread library in C for Icecast which detected deadlocks live, monitored lock contention, and allowed breaking locks and other administrative functions via a telnet interface into the running server. If that can be done in C, then surely we can think of some extremely clever things in Python, Ruby, Erlang, and other languages. That’s not even taking into account the hugely powerful frameworks that can make this easy like Twisted.

The full thread starts here. Happy reading!

:EXTENDED:

How Do You Do Performance Monitoring? - November 2, 2008 - Jack Moffitt