Centralised Process Engine

When I go through the documentation and the examples, I get the impression that all processes start their own process engine. Is there a way to have a centralised process engine? I assume this is done by deploying the different wars for the apps on an application server. But how do I go about using Delegates linked to service tasks, since they all need to be on the classpath of said server. Do I add them all in the lib of my application server? What if there is a new version of a process with a new implementation of a delegate? Obviously since it needs to be on the classpath, it needs to have a different name than the delegate class used in the previous version of my process. I am a bit confused on how to go about this. Can someone clarify? Thanks in advance.

Hi Peter,

Sure. Have a look on the example apps:

You do not need to deploy several wars on the app server. You can model one application which contains several process, case models and just deploy this app to the running flowable engine.

Delegate classes must be accessible on the classpath, where you put them is up to your decision.

Good question. There are several approaches how to tackle this problem. As you wrote you can change class name from one version to another, Because already running processes should use previous class version. Another possibility is to use special classloader and bundle a class with the deployed application. … and many others too.