I have recently migrated from a Drools application to a Kogito application, and I'm facing challenges in updating/creating rules on a deployed application. In the Drools application, I used to create rules dynamically from another app, pass them to the drools application, insert them into the KieFileSystem, and create a new KieSession with the updated/new rules.
However, I understand that this is not the recommended aproach and Kogito apps no longer utilize kjars for rule management. So, I'm seeking guidance on the best approach to update rules regularly in a deployed Kogito application.
Specifically, I would like to know:
- What is the recommended approach for updating rules in a deployed Kogito application?
- Are there any built-in mechanisms or APIs provided by Kogito that allow dynamic rule updates?
- How can I achieve dynamic rule updates in a Kogito application while ensuring minimal downtime or disruption to the application's runtime? This is relevant because the rule set is quite big and it takes a few minutes to transform the drl files into an executable model.
- Are there any best practices or design patterns for managing rule updates in a Kogito application?
Any insights, examples, or references to relevant documentation would be greatly appreciated. Thank you!