Sharing the Load in Movable Type: Some Speculation

I think you need at least two servers to run Moveable Type in a shared environment. Note: this is idle Sunday afternoon speculation.

Why: because the more posts you have, the more work there is to update all the static files in reaction to a change (new post, edit post, trackback, comment.) More weblogs on the server, more events, more inefficient CGI processeses. I know of people reporting that it takes them several minutes to rebuild their sites.

I think this an unanticipated consequence of Moveable Type’s success: there are plenty of shared servers running Apache under virtual hosting with hundreds of instances of Moveable Type’s cgi-bin scripts running at any moment.

Moveable Type’s innovation over Blogger was to keep the idea of the static rendering of your weblog, but move the generation to your server so that a failure at blogger.com did not disrupt all the weblog writers on the network.

Generating pages, only when they change is a good idea, but this sort of caching can waste resources. Consider the case of a busy, comment-rich post. Posting a comment requires regenerating as many as four pages: the blog front page, the page with the post, the by-date archive page containing the post, and the page for each category to which the entry belongs.

Traffic to the comment thread, however, is most likely driven by other sites linking to the post, so a heavily commented post should focus caching on the post, not the other files.

You need finer levels of caching and invalidation in Moveable Type, and ways for multiple sites to share resources. My guess is that is what’s going on in Typepad.

More like this: , , , .