WordPress 2.5 has just been released, and has users are quickly finding out, file-based object caching has been removed from this release.
We’ve just released another extension to the WordPress object cache mechanism, supplementing our existing plugins for adding eAccelerator and XCache support to WordPress’s object caching features.
NeoSmart Technologies’ File-Based object caching extension for WordPress re-implements the cache-to-disk object caching feature of WordPress 2.0 through to 2.2. NeoSmart Technologies is also committed to the maintenance and support of the file-based caching mechanism.
Please be careful with the use of this plugin. It’s been disabled in the default WordPress codebase since WordPress 2.1 as a result of certain shared webhosts complaining of increased disk I/O access and thrashing when WordPress is subjected to extreme load times (as in the event of a Digg or Slashdot attack); so make sure your disk is fast enough to make it worth using this extension.
For those of you that haven’t yet heard, WordPress is once-more taking part in the Google Summer of Code. Google Summer of Code 2008 is a Google-sponsored program where college students are encouraged to contribute to their favorite open-source projects for a summer, and in exchange both they and their mentors receive some monetary compensation/motivation for their efforts.
I really don’t need to go into details about this much, since Lloyd Budd has done such a good job explaining what it is and what WordPress hopes to achieve in this program. This year, WordPress has an even-larger and more-exciting list of possible projects than before, along with a list of the mentors available for each idea. This Google Summer of Code, I’ll be mentoring for the WordPress projects in the one area that is closest to my heart: improving performance.
It would be unfair to say that WordPress is slow or an inadequately-performing blogging engine, because that’s not really true. "Performance," more than any other software characteristic or trait, is a very relative and subjective index. It depends on thousands of different factors, it has dozens of different baselines, and most confusingly of all, sometimes the perception of performance matters more than the performance itself.
Caching and Why We Need It
Ever since the creation of interpreted languages and the birth of dynamic web content, developers have been on the lookout for tools, workarounds, and extensions in search of a solution for a solution to bring maximum performance to the world of dynamically-generated web pages.
Perhaps the simplest, most straight-forward, and most effective of these solutions is the caching technique. In most caching implementations, the dynamic content generated by user requests to a particular URI on a server trigger the caching mechanism which then stores the generated content in a "storage facility" somewhere. Future requests to the same URI retrieve the stored content rather than spend time and effort re-creating the response.
The most-popular method of caching involves the archiving of the complete HTML response generated by the webserver and then stored as a static content on the hard drive for retrieval at a later date (usually with some mechanism responsible for expiring the content upon certain actions or after a set amount of time).
If you’re a regular reader, you probably know by now that we just love performance and can’t get enough of server performance-improving software/code… Especially when it comes to WordPress.
Donncha has recently released a great plugin for WordPress, called "WordPress Super Cache." It builds on the original WP-Cache plugin by Ricardo Granada – except that it fixes all the bugs in the original implementation and has been written in enough pure PHP that it’ll also run on Windows servers – both IIS and Apache for that matter! <cue applause>
At the moment (as of version 0.3.1) it needs a bit of work to make it run, but not much. So here goes – 10 easy steps to get cached content on your IIS or Apache server under Windows:
We’ve just finished uploading the latest versions of our XCache and eAccelerator plugins, now at version 0.6.
For those of you that missed the initial announcement, we’ve written two plugins that let WordPress communicate directly with memory-resident opcode PHP variable caches that are used in XCache and eAccelerator to boost performance and decrease I/O activity.
eAccelerator and XCache are the two most-popular open-source opcode caching engines for PHP, and we highly recommend that any and all hosts use them to improve PHP performance by several folds. In particular, we recommend XCache for best performance.
In this episode of “The Never-Ending Quest for Better Server Performance,” we follow our heroes’ journey through the dangerous and murky woods of PHP opcode caching engines, where they aren’t content with just installing an opcode caching engine, but <gasp> becoming one with it too!
Yep, you heard that right. We’ve just released two new plugins for the WordPress users out there, that take opcode caching to the next level. If you haven’t already installed an opcode caching engine like XCache (our favorite!), eAccelerator, Turck MMcache, Memcached, APC, or PHPA then you really need to do that right now before even continuing this article. Really, what were you waiting for!?
If you’ve been wondering why the lack of activity, well, now you know. CompleteRSS 1.1 has just been released; and we’re almost done with EasyBCD 1.61 (actually, we’re done) and we have another program we’ll be releasing in one form or the other sometime soon (as in 24-hours-soon).
CompleteRSS 1.1 fixes an elusive bug that rendered the_excerpt() useless, and a host of other compatibility issues with other plugins that incorrectly access the RSS action hook in WordPress.
Download CompleteRSS 1.1
It seems like the latest SVN commits to WordPress have added tagging support to the popular open-source blogging platform… and it’s about time, too! It’s no longer stuff you have to add by plugin, so WordPress is finally getting with the times and adding this much-requested functionality to the upcoming WordPress 2.2 (due to be released April 22, 2007). See for yourself:
CompleteRSS 1.0 was released yesterday, it’s been upped to a full-release, no longer alpha. Nothing major has changed as far as functionality or purpose is concerned, but it’s a highly recommended upgrade because it addresses a couple of high-profile (really annoying) bugs that can occur if you have a post with the word “feed” in the permalink.
Moreover, there have been several fixes to enhance compatibility with non-standard permalink structures, older versions of PHP, and feeds via proxies. It’s a fully-stable release, and now it’s more important than ever, since WordPress 2.1 has gone public.
WordPress 2.1 never displays content past the <!–more–> marker in an RSS/Atom feed, unlike WordPress 2.0.x & co. If you’re a dedicated blogger and you love your readers, do them a favor and serve full-content RSS feeds: they’ll appreciate it, and you’ll get more feed subscribers :)