Rack::Cache 0.2, Real HTTP caching for Ruby web apps


#1

I’m pleased to announce the initial release of Rack::Cache, a piece of
Rack
middleware that implements many of RFC 2616’s caching features with a
basic
set of storage options (disk, heap, and memcached) and a configuration
system
for controlling cache policy.

http://tomayko.com/src/rack-cache/

Introductory blog post:

http://tomayko.com/writings/rack-cache-announce

Features

Rack::Cache is suitable as a quick drop-in component to enable HTTP
caching
for Rack-based applications that produce freshness (Expires,
Cache-Control)
and/or validation (Last-Modified, ETag) information.

  • Standards-based (RFC 2616)
  • Freshness/expiration based caching
  • Validation
  • Vary support
  • Portable: 100% Ruby / works with any Rack-enabled framework
  • Configuration language for advanced caching policies
  • Disk, memcached, and heap memory storage backends

Status

This is a young and experimental project that is likely to change
substantially and may not be wholly functional, consistent, fast, or
correct.
The current focus is on reaching basic compliance with RFC 2616 and
providing
good documentation.

Installation

From Gem:

$ gem install rack-cache

With a local working copy:

$ git clone git://github.com/rtomayko/rack-cache.git
$ cd rack-cache
$ rake package && rake install

COPYING

Rack::Cache is Copyright © 2008 Ryan T.
http://tomayko.com/about and
made available under the terms of the MIT license.