Beaker is a web session and general caching library that includes WSGI
middleware for use in web applications.

As a general caching library, Beaker can handle storing for various times any
Python object that can be pickled with optional back-ends on a fine-grained
basis.

Features
- Fast, robust performance
- Multiple reader/single writer lock system to avoid duplicate simultaneous
  cache creation
- Cache back-ends include dbm, file, memory, memcached, Redis, MongoDB, and
  database (Using SQLAlchemy for multiple-db vendor support)
- Signed cookies to prevent session hijacking/spoofing
- Cookie-only sessions to remove the need for a db or file backend (ideal for
  clustered systems)
- Extensible Container object to support new back-ends
- Caches can be divided into namespaces (to represent templates, objects, etc.)
  then keyed for different copies
- Create functions for automatic call-backs to create new cache copies after
  expiration
- Fine-grained toggling of back-ends, keys, and expiration per Cache object
