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.