[Zope] ZScheduler

Jerry Spicklemire jerry@spicklemire.com
Thu, 18 May 2000 08:57:59 -0500


There was some discussion earlier this year on the Zope-Dev list. THese
items may belong in subclassed objects based on "schedulable"(?) or might
be considered part of a larger "Zope Event Model" project, for later on. At
any rate, here are some of the ideas that came out back in February.

"Zope and a standalone Python event loop can easily pass messages in the form
of  records in a shared data store, e.g. a PostgreSQL database.

> ... Do you think it's important to capture output?

Not in itself, but it is certainly necessary to verify successful completion
of each event, and those events can involve creation of output. ZODB may or
may not be the target storage for such output, but an effective Event
Manager must at least be able to confirm the output's existence and
correctness, currency, etc.

When an event fails an error event may be generated, whose first purpose is
to attempt to restart the failed event, including verifying and/or
reinitializing any prerequisites. An alert event (auto-page) may also be
generated, to notify the designated driver of a mishap. (Yuck!)

We found that we needed to track :

	dependencies (conditions required prior to start, such as prior events)

	normal runtime window (earliest start time, latest end time)

	normal runtime length (shortest expected completion period, longest)

	on-completion action (initiate subsequent event)

	on-error action (re-start event, alert event, etc.)
	
>The kinds of scheduled tasks I'm thinking about are
> - email reminders
> - garbage collection
> - updating syndicated content from other sites
>
>Anybody have other examples with other use patterns?

 - promoting new or updated content through develop, test, production status

 - spamming users when new content gets published

 - notifying content maintainers of irate feedback (after spamming users)"

from: http://lists.zope.org/pipermail/zope-dev/2000-February/003220.html

Later,
Jerry S.