Beaker is a library for caching and sessions for use with web applications and stand-alone Python scripts and applications. It comes with WSGI middleware for easy drop-in use with WSGI based web applications, and caching decorators for ease of use with any Python based application.

  • Lazy-Loading Sessions: No performance hit for having sessions active in a request unless they're actually used
  • Performance: Utilizes a multiple-reader / single-writer locking system to prevent the Dog Pile effect when caching.
  • Mulitple Back-ends: File-based, DBM files, memcached, memory, and database (via SQLAlchemy) back-ends available for sessions and caching
  • Cookie-based Sessions: SHA-1 signatures with optional AES encryption for client-side cookie-based session storage
  • Flexible Caching: Data can be cached per function to different back-ends, with different expirations, and different keys
  • Extensible Back-ends: Add more backends using setuptools entrypoints to support new back-ends.

News

Documentation

Download Beaker PDF documentation.

Source

Beaker's Mercurial repository can be found at http://bitbucket.org/bbangert/beaker/.

To check out:

hg clone http://www.bitbucket.org/bbangert/beaker

Project Versions

Download

Current version: 1.6

Get Beaker from the Python Package Index, or install it with:

easy_install -U Beaker

Bugs? Suggestions?

Report them at the Bitbucket tracker.