Killing Off Runaway Apache Processes

Well, something is still going wrong on — despite previous performance tuning efforts, I’m still running into cases where machine performance grinds to a halt. In debugging it a bit further, I’ve found that the root cause is an apache httpd process which wants to consume nearly all of real memory which then causes the rest of the machine to thrash horribly. The problem is that I haven’t figured out what is causing that one thread to want to consume so much RAM — nothing unusual appears in either the access or the error logs and I haven’t figured out a way to debug a running apache thread. (Suggestions anyone?)

WordPress/MySQL Tuning runs on a relatively tiny box — a Pentium III with 512MB of RAM. I’m running a Gentoo Linux distribution, so I actually have a prayer of getting useful work out of the machine (it server is actually a recycled Windows desktop), but the performance just wasn’t great. As it turns out, there are several easy things one can do to dramatically improve life.

Possible Resolution to Technorati Update Problem

Up until about an hour ago, Technorati refused to update its database of postings to DLTJ, and having reached the 31-day point of no updates I was starting to wonder what to do about it. I came up with two theories for which I put in fixes to the configuration and theme setup of DLTJ, but in the end I’m not sure if either definitively provides a solution for anyone else in the same situation. In the spirit of helping out one’s neighbors, though, here are the theories and fixes. DLTJ is a standalone (e.g. not hosted) WordPress 2.0.4 installation, so YMMV.

Modifications to FreePress Recent Comments Plugin

For others that may find it useful, I’ve made two modifications to the FreePress Recent Coments plugin on DLTJ: one to strip out quoted material when using the Quoter plugin and a second to suppress pingback entries that result from links to material within the blog.

Code from the first came from a blog posting about how to get Quoter to work with a different recent comments plugin. It is slightly modified, though, with the use non-greedy wildcard (*?) in the middle. (It is possible to have more than one quoted section in a comment, and the original code would leave just the text beyond the final [/quote] tag.) The context-sensitive diff is:

DLTJ under a New Theme

Okay — let’s try this again. The first time around didn’t go so well, so I went back to the basics and started with a new theme: what is running on DLTJ now is a modestly modified version of Barthelme version 1.2.2 by Scott Allan Wallick. The modifications include the insertion of the Extended Live Archives plugin on the front page. I’m pretty excited about this…I think it better answers the question of why someone would want to come to the home page of a blog — not to read a reverse chronological list of the authors thoughts but a mechanism for the reader to use to drill down to what they might be looking for (whether it be by category, by tag, or chronologically). Take a look at the home page and let me know what you think.

DLTJ page rendering updated (sorry Bloglines users)

Overnight I made several changes to the layout and rendering of pages on DLTJ — both in its web presentation and in its RSS presentation. The changes were really driven by the fact that my tags were not getting picked up in Technorati because the WordPress UltimateTagWarrior plugin was not including them as expected in the RSS feed (although it was in the web presentation, which was throwing me off). And I’ve heard from some (hi, Karen!) that when I make changes to the RSS rendering that Bloglines makes it look like all of the posts have been updated. This isn’t the case — just the rendering of them has changed. You’d think that Bloglines would read the “>pubdate<” tag and figure this out for itself, but it doesn’t. So to all of the Bloglines users, you can ignore all of the “new” posts from DLTJ except for this one — the content has not changed in those earlier posts.