cancel
Showing results for 
Search instead for 
Did you mean: 

Activiti as scheduler / process manager. Advice please

rguillemette
Champ in-the-making
Champ in-the-making
Hello everyone,

I'm currently evaluating activiti for one of my project.

I have thousands of job I need to periodically start and schedule (daily, hourly, monthly, quartely, etc). <!–break–>
To launch these jobs, I need to call external web services, REST API or insert a new row in a database.
I need to support simple flow or job dependency : job1 <== job2 <== job3

An simple example would look like :

START => call WS 1 => wait status WS 1 => On completed => call WS 2 => wait status Web Service 2 => END
                                                          => On Error: send notification

So what I'm searching is a kind of master coordinator able to schedule these job flows and provide notifications when they fail.
I need to quickly be able to implement news WS/rest api client (extending some kind of abstract class?).
A basic feature to monitor which job is running, which job has failed and which job has completed sucessfully is also needed.

The coordinator does not need to manage any data. Its sole role is to call "external workers" and get their status.
I don't need to queue or give any task to any user. All users will be admin able to add and schedule new job flow.

So, my question is:
Is activiti a good choice for this kind of usage ?


Thank you very much for your help.

Regards.


Remi

4 REPLIES 4

jbarrez
Star Contributor
Star Contributor
Yes, you can do this with Activiti.

But seeing that you only have 'automatic steps' it might be good to evaluate more dedicated tools which do batch processing (Activiti is tailored towards human interactions)

parkroyk
Champ in-the-making
Champ in-the-making
Hello Joram,

My team is currently planning on using Activiti as our workflow engine, and we may be executing many automated tasks via web service calls (essentially ServiceTasks).  Could you elaborate on what you meant by your comments above?  Thanks.

Roy

jbarrez
Star Contributor
Star Contributor
Activiti is a BPM engine, and typical processes include human steps. it includes 'wait states'. Activiti excells when you have a mix of logic (ie the service calls) and human interaction.

If you only have automatic steps in a process, frameworks such as camel, spring integration/batch probably will be easier in use.

piyush_kaizen
Champ in-the-making
Champ in-the-making
Hi ,
Can you please explain or point me to a good resource on How can I schedule Tasks in a workflow.
And Introduce delay in execution of Next Task.

Thanks in advance