← Back to team overview

launchpad-dev team mailing list archive

Re: generic job queue cronjob?

 

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 09/23/2010 07:59 PM, Martin Pool wrote:
> On 24 September 2010 09:35, Aaron Bentley <aaron@xxxxxxxxxxxxx> wrote:

>> I was looking for examples of uses of messaging outside task dispatch.
>> Branch scan and diff generation fall squarely under task dispatch.  They
>> are exactly the sort of thing I was already considering, not something I
>> hadn't thought of.

> From a certain point of view, any messaging / communicating sequential
> processes architecture could be considered 'task dispatch'.  What is
> the distinction?

For the purposes of this discussion, task dispatch is infrastructure
such as the build farm, the job system, and the contemplated "new task
system".

> I suppose it is that 'task dispatch' connotes that a
> new process is created

No, it doesn't imply process creation. You can have process pools that
are reused, as the Job system does.  This is provided as an example
under "Expensive set-up for particular task types can be amortized by
running several tasks of the same type per set-up."

> and it serves one message, without much
> internal state from one message to the next?

I suppose that's true.

I'm really only interested in the practical distinction: stuff we have
already considered and started to gather requirements for, and stuff
that we haven't.

I think there's a theoretical distinction between imperative messages
and informative messages.  Informative messages ("this branch tip has
changed") don't imply that the sender expects any particular
consequence, and are multicast-- all interested workers should consume
the message.  Imperative messages ("run a scan job on this branch") do
imply an expected consequence, and provide a point of coordination--
only one worker should run the branch scan job, and that worker will
consume the message.

Aaron
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkycp0oACgkQ0F+nu1YWqI2LnwCcCpAdNJr/jMDur9LWgX9yoHfP
OiUAoIIiuOD6y2N5iA1G0CNc8gynstmF
=05AJ
-----END PGP SIGNATURE-----



Follow ups

References