retools is a concise set of well-tested extensible Python Redis tools.
retools is available on PyPI at https://pypi.python.org/pypi/retools
- :mod:`Caching <retools.cache>`
- Hit/Miss Statistics
- Regions for common expiration periods and invalidating batches of functions at once.
- Write-lock to prevent the Thundering Herd
- :mod:`Distributed Locking <retools.lock>`
- Python context-manager with lock timeouts and retries
- :mod:`Queuing <retools.queue>`
- Simple :ref:`forking worker <queue_worker>` based on Resque
- Jobs stored as JSON in Redis for easy introspection
- setproctitle used by workers for easy worker introspection on the command line
- :ref:`Rich event system <queue_events>` for extending job processing behavior
- :mod:`Limiter <retools.limiter>`
- Useful for making sure that only N operations for a given process happen at the same time
- Well Tested [1]
- 100% statement coverage
- 100% condition coverage (via instrumental)
Reference material includes documentation for every retools API.
.. toctree:: :maxdepth: 1 api Changelog <changelog>
[1] | queuing not up to 100% testing yet |