Scheduling WSGI Middleware
This package acts as a WSGI scheduling engine, the middleware can be configured
to request web contexts at given intervals. A user may then, within their application,
configure the web contexts to perform scheduled tasks e.g. maintainence.
The middleware for pulse is provided in pulse.middleware:PulseMiddleware and a paste
filter_app_factory is also provided.
Pulse can be configured in two ways. The Middleware takes keyword configuration
arguments when constructed,or alternatively a config dictionary
allowing it to be configured by paste.
If using pastes the pulse configuration options take the form of:
Currently only one configuration option is supported:
* context - This is the base web context that tasks are sent to,
tasks are dispatched to /$context/$action, unless action is an absolute
* mode - This specifies the multiprocessing mode, the default is 'theading',
if running python2.6 the 'processing' option is also available.
* guard - If True the pulse middleware prevents any pulse managed contexts
from being accessed extenally, the default is False.
Each task defines at an interval and a web context, pulse will request
the specified web context every interval seconds.
Creating A Task
A new task is created by specifying configuration options, each option takes the form:
The following task configuration options are available:
* interval - The interval between task dispatching.
* action - The action to dispatch to: see pulse.config.context
Tasks can also be programmatically configured by passing a dictionary of
<taskname, TaskObject> into PulseMiddleware's task keyword argument.
To request the following context '/sessions/cleanup' every 5 minutes, the following
paste configuration could be used:
pulse.config.context = sessions
pulse.task.cleanup.action = cleanup
pulse.task.cleanup.interval = 300
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.