Jeff Darcy (whose blog is well worth a look) pointed at one of his own articles on a subject near and dear to me: High-Performance Server Architecture. This document describes in detail four performance killers for software that needs to deal with a high rate of messages or requests. This is generally applicable to a wide variety of software that needs to go fast, and talks about the nasty low-level details that I find fascinating. I do not recommend designing high performance software without understanding this stuff.