My server has been going slightly slower than I’d like lately when it comes to serving up HTTP requests. Sometimes when I go into WordPress or its admin, it would take up to a minute to finally go through. It was driving me kind of crazy. I like to blame it all on Jason though, since I bought the box from him, and he doesn’t know the first thing about building computers. ;)
I think I may have fixed it though, and it was pretty simple, really. I went into my kernel config and started flipping all the network configs to modules instead of being compiled in. In the first place, I theorized, if the kernel really needs it, it can load it instead of me telling it to put it in there. I’m not sure how well that rationality holds in reality, but in my dreamland it sounds great and smells even better. Secondly, I went back and admitted to myself that I really don’t know that much about networking (which is putting it mildly), and turned off any features that said, “If you are unsure, say N”. Recompiled the kernel, rebooted, and lo and behold … it’s much, much snappier.
The kernel only ended up pulling in a few fundamental modules (which I was expecting it would), so I guess that cut out some of the overhead. I haven’t run any networking benchmarks or anything, but apache and ssh are noticably snappier. I haven’t had one timeout yet. The lesson to be learned here? Read the kernel docs, build your own stinking boxes, and don’t let me anywhere near your network.