Many Web 2.0 applications include a substantial amount of dynamic content. The pages of these applications generally cannot be generated once and then saved for reuse, and must be built from scratch in response to each request.
In order to make a Web 2.0 application run with an acceptable degree of efficiency, it is often necessary to do some application-level caching. The open source Memcached server is often used for this purpose. It is relatively easy to install Memcached on one or more servers, creating a single, cache which can expand to consume the available RAM on all of the servers if necessary. The cache can be checked before performing an expensive calculation or database lookup, often obviating the need for the calculation or the lookup. The results can be stored in the cache for the next time around. Properly implemented, a cache can provide a tremendous speed benefit while also reducing traffic to database and compute servers.
Think of it as "Memcached as a service."
The Gear6 implementation of Memcached leverages the instance's local (ephemeral) storage, providing a 100x cache capacity increase per instance (when compared to a purely RAM-based cache), while remaining 100% compatible with the existing memcached API. There's a web UI (shown at right) for monitoring, with access to 24 hours of historical usage and performance data.
The 32-bit (Small) instances are free (regular EC2 usage charges apply) and the 64-bit instances are available on an hourly basis, with prices ranging from $0.50 (Large) to $0.86 (Quad Extra Large) per hour, plus EC2 usage charges, including 24x7 support from Gear6. Get started now.
Memcached client libraries are available for every common programming language, including C / C++, PHP, Java, Python, Ruby, Perl, .Net, MySQL, PostgresQL, Erlang, Lua, LISP, and ColdFusion.
I'm really happy to see this offering from Gear6. As I note in this blog from time to time, powerful, high-level services like this allow application developers to spend more time focusing on the novel and value-added aspects of their application and less time on the underlying infrastructure.