On 10/02/14 16:20, Toby Crawley wrote:
Actually, Immutant has its own Quartz integration, and is not based on
quartz-clj. You can, however, use the Quartzite API with the
cluster-aware Quartz scheduler that Immutant provides if you prefer
the Quartzite API over the Immutant one. - Toby
Thanks for being more precise, as I said I've have not used any of these
libraries, yet (project still in the starting block)...
On 10/02/14 14:30, Adrian Mowat wrote:
Also, if anyone else is interested in this space, I would love to hook
up and bounce some ideas around.
A scheduling library would provide much of what's needed for managing
these jobs, but that would be at a level which may not be too low for
certain use cases, e.g. finer control over job distribution, job
composition, exception handling, manual retry, etc. A layer above the
scheduler would make sense for this.
Recently, while investigating the use of a finite state machine and thus
searching for fsm libraries in the clojure world, I ended up looking at
a couple fsm libraries used in pallet (http://palletops.com/)
<http://palletops.com/>:
- pallet-fsm (https://github.com/pallet/pallet-fsm)
<https://github.com/pallet/pallet-fsm>
- pallet-fsmop (https://github.com/pallet/pallet-fsmop)
<https://github.com/pallet/pallet-fsmop>
They are used in the pallet api for managing cloud operations on remote
nodes:
http://palletops.com/pallet/marginalia/0.8/uberdoc.html#pallet.core.primitives
http://palletops.com/pallet/marginalia/0.8/uberdoc.html#pallet.api (see
converge method)
I don't know if you use pallet but this may be of interest, especially
when reading the rationale:
https://github.com/pallet/pallet-fsmop/wiki/Rationale
An example of usage can also be found in this discussion:
https://groups.google.com/forum/#!topic/pallet-clj/ZcBrmUn-mAI
<https://groups.google.com/forum/#%21topic/pallet-clj/ZcBrmUn-mAI>
From what I understand pallet-fsmop
<https://github.com/pallet/pallet-fsmop> is based on pallet-fsm
<https://github.com/pallet/pallet-fsm> and provides higher-level
operations over sets of fsm that must have certain states for that
purpose. These higher-level operations trigger the remote operation
encapsulated by each fsm, adding some delay, timeouts, comprehensions,
reducers, reporting, etc. So in your case one could imagine a similar
library that uses a scheduling library instead of doing immediate or
delayed execution.
In any case a single library won't satisfy all your requirements, so you
will have to choose a scheduling library and compose with others...
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
---
You received this message because you are subscribed to the Google Groups "Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.