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!?
Now that you’ve discovered the joy of opcode caching and the benefits it brings to your servers, here comes the next step: integrating the actual code your server runs with your opcode caching engine. By default, when you install the opcode cacher, it’ll sit in the background (in the memory!!!!) and memorize what each compiled PHP script looks like. Sure, it’s a lot of work, but it can be doing even more – like memorizing objects and variables in its uber-fast memory too.
The problem is that this isn’t something “easy” that happens by itself, it requires a conscious and painful effort on behalf of script developers to add an integration layer in their script that lets it communicate with the opcode caching engine. Well, that’s what we’ve done for all you WordPress lovers out there: we’ve added support for the two very popular open-source opcode caching engines – XCache and eAccelerator. Both are very good opcode cachers in their own right, but with our WordPress extensions, they become Godsends.
Installation is a snap: just extract the single PHP file for your engine, and stick it in your /wp-content/ folder to discover the truly powerful side of opcode caching! You can use these on dedicated and shared hosts, just figure out what caching engine is in use and download the appropriate file.
< ?php include("http://neosmart.net/includes/chipin.php?type=wide"); ?>