[PEAK] need hints on PEAK twisted support
Stephen Waterbury
golux at comcast.net
Sat Apr 10 17:57:18 EDT 2004
ueck at net-labs.de wrote:
> CWM would possibly the way to go .. but i didn't find any
> tool to Edit the Schema-Info freely available so i went on
> with a simpler approach. i haven't used it for ages right now.
Yes, CWM is interesting, and I notice there is mention of it in
PEAK.
>>> bsddb (a try to make a bsddb-datamanager .. doesn't really work)
>>
>>You might want to check out ATOP, Glyph's latest persistence
>>engine. ;) He gave a good talk at PyCon DC about it, and had
>>lots of lessons-learned about BSDDB as a back-end. Non-trivial.
>>
> does it come with twisted ?
No (although it might eventually be one of the components in
a "modularized" Twisted -- the re-configuration of Twisted into
a set of interoperable components was also discussed at PyCon DC).
It is part of Divmod's Quotient package:
http://www.divmod.org/Home/Projects/Atop/index.html
>>> - workspace (concept of a Workspace, is also used in my webdemo.
>>> a workspace is the "controller" in MVC and is
>>> implemented in my libraries as statemachine as
>>> event-consumer, that interacts with the businessobjects
>>> on behalf of the user's actions and controls the
>>> user-interface. this packages is not yet complete )
>>
>>It would be interesting to give it a Twisted Perspective
>>Broker interface to make it a "sharable workspace" in a
>>potentially more flexible way than a web app could do ... :)
>
>
> The whole system is designed as 4-Tier app:
> - UserInterface (Web/wxWidgets)
> - Workspace
> - BusinessModel (peak.model, business-rules)
> - DataStorage (datamanagers)
This is identical to the architecture of my Twisted app. :)
The Workspace layer is shared between client and server, but
eventually I'd like to "fuse" them so any node can be configured
to combine features of each (e.g., so a client could cache
enough info to work offline for a time, or when connected serve
as a sandbox / whiteboard server in a collaboration).
> the communication should happen as async messages between
> the components, that are either local or remote (configurable)
>
> e.g. a wxClient would have UserInterface and Workspace within
> one process and talk to the BusinessModel with remote-messages
> while a WebApp would only be the UserInterface that talks with
> http-requests to the workspace that lives on the server-side
> (session-based).
Right, so the Web app would just be an active user interface,
relying on a more robust distributed architecture beneath --
makes sense to me.
> this is the theory .. it's still a far way to go.
Sure. :)
>>>nllworkflow (actively developed and ready for a4)
>>>------------
>>> a Workflow Package that currently include an UML-1.3 like
>>> StateMachine. Future versions should also contain a WFMC
>>> Engine to be able to start ActivityBased and StateBased Processes.
>>
>>I'd like to see if we can collaborate on this. My partner
>>on our app has developed a WFMC-based workflow app, but I'm
>>not sure how the state machine under it works.
>
> about 2 years ago i also developed a WFMC-Engine-Prototype with Transwarp
> (PEAK is it's successor) that used a fairly similar aproach for scheduling
> the activities as peak.events does right now.
> it's in our cvs in /oldlibs/NetLabsLibs/src/NLL/Services/Workflow/.
>
> peak uses similar concepts, so a "major refactoring" would get it
> back from my codebase ;-)
We should probably talk about requirements and use-cases,
too, so we are at least approximately on the same page. :)
BTW, I notice that WfMC has a couple of new standards, XPDL
and Wf-XML, that I would like to support. Sheesh, so much to
do. :/
> I'm interested in sharing efforts for this as my time allows.
> i have not yet started planning to work on wfmc for now.
We will be including ours in a released app someday soon
(or else! :), so we'll send more info as we get closer.
Cheers,
Steve
More information about the PEAK
mailing list