Execution state persistence for workflow application
nospam at nospam.com
Sat Nov 29 22:36:23 CET 2003
I hacked together a python vm coded in python not too long ago and I managed
to get it to hibernate and then resume. It is not too difficult. You should
search Google for the following keywords for other similar projects:
The key issues are
a) Most non-trivial workflows aren't simple programs. They are event driven
and tasks may run concurrently. For example, see how Zope's (the web site)
workflow for submission, acceptance, retraction of published documents. You
will need to write pretty convoluted program in python to express the states
that are involved.
b) Open file handles, sockets need to be restored across sessions
c) Most of these problems can only be overcome by a language that support
workflow semantics, and python and most C style languages are not quite
"Alan Kennedy" <alanmk at hotmail.com> wrote in message
news:3FC3443B.92709051 at hotmail.com...
> [Serge Orlov]
> >> The problem is that one day you will
> >> have to upgrade your program and your last dumpexec won't be
> >> compatible with your next loadexec(). You will have to separate
> >> code from data to do it. So it means execution persistence is not
> >> enough for real life use. Why not just use data persistence alone?
> [Paolo Losi]
> > In fact data persistence is not sufficient to stop and resume scripts
> > in case, for example, system reboot.
> > I do want my workflow scripts to resume exactly (and with the same
> > globals/locals setup) where they left...
> > The real alternative would be to define a new script language
> > with standard constructs (for, while,...) but again... i don't want
> > to reinvent the wheel.
> > I do not seen execution persistence as an alternative to data
> > persistence: I would need both.
> You might want to investigate Stackless python, an excellent research
> work which can save and resume execution state, to some degree. Try
> the following google query
> alan kennedy
> check http headers here: http://xhaus.com/headers
> email alan: http://xhaus.com/mailto/alan
More information about the Python-list