Simple scheduling WSGI middleware.
Project description
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.
Configuration
-----------------
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:
pulse.config.$configoption.
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
path.
Tasks
------
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:
pulse.task.$taskname.$option
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.
Example
========
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
============================
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.
Configuration
-----------------
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:
pulse.config.$configoption.
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
path.
Tasks
------
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:
pulse.task.$taskname.$option
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.
Example
========
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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
No source distribution files available for this release.See tutorial on generating distribution archives.
Built Distribution
pulse-0.1-py2.6.egg
(6.9 kB
view hashes)