5

If I wanted to port a Python + Celery web application to a Clojure tech stack, what options do I have for task queuing and scheduling? Can I just interop with a Java library like Quartz?

After some searching, I found Quartzite, but have no idea about its efficacy.

Related: What's the equivalent of Python's Celery project for Java?

Community
  • 1
  • 1
Petrus Theron
  • 27,855
  • 36
  • 153
  • 287
  • I was faced with this too, so I'm working on a library myself, but it's still under active development and not ready yet https://github.com/d11wtq/cuckoo – d11wtq Feb 27 '14 at 00:01

2 Answers2

2

Yes, Java interop with Quartz is reasonable and should probably be your default option. I think people are sometimes too hesitant to use Java interop from Clojure, but actually it works quite well.

For evaluating Quartzite, I would take a look at the specific scheduling features you know you'll need and see if Quartzite provides interfaces to those.

Another solution developed by a coworker of mine is a native Clojure library: Monotony, it might be worth checking out.

levand
  • 8,440
  • 3
  • 41
  • 54
0

Check out Immutant. It's an application server and gives you clustering, messaging, Jobs & Caching and is of high quality since it's build on top of JBOSS application server.

ClojureMostly
  • 4,652
  • 2
  • 22
  • 24