[Grok-dev] Triggering recurring events and executing tasks in the
gary at zope.com
Thu Mar 27 10:15:16 EDT 2008
On Mar 27, 2008, at 4:09 AM, Tim Terlegård wrote:
> On Mar 26, 2008, at 4:02 PM, Gary Poster wrote:
>> I can't help but mention zc.async, which is now in a push to
>> actually be used here at ZC. It shouldn't be used--and perhaps
>> can't be used--by anybody other than us right now, I'd say (so that
>> we're the ones dealing with breakage at this stage) but, as I said,
>> I can't help myself:
>> lovely.remotetask is very similar in design to the Zope 2 zasync
>> that we did some years back. This new design is intended to
>> address a lot of concerns with that design.
> What will the difference be between lovely.remotetask and zc.async
> use case-wise?
Hi Tim. Pretty much identical use cases, though there are some subtle
differences here and there. async is lower-level, but also hopefully
easier to use in some common use cases. On the other hand,
remotetask, for instance, has built-in cron jobs, which would need to
be tied together yourself (albeit trivially) in async.
Configuration flexibility is one of our biggest drives to resurrect
the project ("resurrect": it is technically older than remotetask,
though the original version was tied-to-the-hip with the Twisted-based
Zope server, which proved to be a death knell for it at the time).
The approach to creating jobs is lighter-weight too, from an API
perspective--though some might argue for the explicit "service"
registration of remotetask and the original zasync. I obviously would
disagree, from experience with zasync. ;-)
I think the lighter-weight approach, combined with the configuration
flexibility, encourages some interesting uses such as blackboards and
decomposing a job into parallel tasks; broadcasting events or messages
across multiple processes; and so on. remotetask, now or with some
effort, could accomplish these too, but I think the async design
favors this use case more.
Folks have very different perspectives and values, so, while I hope
that async gets traction and is preferred by some or many, I suspect
that remotetask will be preferred by some or many.
More information about the Grok-dev