Hi,
We have several per-request DROOLS rule engines that get called for various types of requests in our system. We have some large global data that is stored in a database that we would like to load into a global variable for a singleton DROOLS engine that the others would use so that we wouldn't need to send all the data with each request.
All these engines will run on the same Kie workbench.
I tried creating and including a singleton project as an "Included KIE base" for a per-request project, but when each request was sent, it would initialize the data each time. It was storing its data in a global variable of the singleton.
I found (from Chat GPT) that including a singleton project in a per-request project changes its nature so it is treated like a per-request. (Chat GPT seems to make suggestions that don't always work in the DROOLs world.)
It looks like I should probably avoid making an actual API call because all the data would be sent in a request. Since both engines are on the same kie workbench, is there a good way to share the data so that it is loaded once and used by other projects efficiently?
Do I need to consider using a JBPM with rule tasks? I prefer to not have to rearchitect existing production per-request DROOLS engines and would like to keep things as simple as possible.
Thanks in advance,
Steve