The Quarkus project is becoming quite popular among developers. Quarkus provides a fast-dev environment, and it has already a set of libraries, standards, and frameworks that are made available through extensions like RestEasy, Panache, SmallRye, Keycloak, and Kafka. Additionally, you can start using Kogito today to create intelligent Quarkus applications.
Business applications are all about knowledge automation. The jBPM and Drools community know this and wanted to provide a way for Quarkus developers to build intelligent applications.
Kogito is the open source Quarkus extension that allows developers to implement core logic in a more business-driven way. It brings concepts and maturity from 15+ years of experience of production-tested projects like jBPM.
Kogito is the proper extension for intelligent Quarkus applications. Kogito precompiles business assets (like a BPMN file or a rules decision table, for example). It automatically generates the native executable with its own REST endpoint that allows interaction with its respective processes, tasks, and rules. In that way, developers only need to worry about the implementation of the logic itself.
With Kogito, delivering intelligent cloud-native business applications will be easier than ever. To understand the power of Kogito, let’s take a quick look at what a Business Automation tool like jBPM delivers.
Red Hat Process Automation Manager
Red Hat Process Automation Manager (RHPAM) is the enterprise version of jBPM project, which includes Drools and OptaPlanner. RHPAM is well known for delivering a cloud-ready solution through BizDevOps culture. It has a productive environment to author business logic using comprehensible language for biz and tech: the logic is implemented following the triple-crown pattern – Business Process Model and Notation (BPMN), Case Management Model and Notation (CMMN), and Decision Model and Notation (DMN).
It also comes with a powerful execution engine, Kie Server, which can easily scale in hybrid cloud environments and can deliver decoupled business logic through CI/CD pipelines. To understand more about the power of a business automation tool like RHPAM, refer to this article: Good news: Business automation is not about SOA.
Kogito ergo automate
With Kogito, developers can have business assets precompiled and running on top of Quarkus, taking advantage of hot reload during the development phase. Additionally, when using native mode to compile the project, a business rule execution runs 100 times faster and with lower resource consumption.
Needless to say, the startup time is superb in both modes (the application is ready for access after boot; no additional processing happens on the app first access). Check out the startup times for these Kogito example projects:
Startup using GraalVM takes 1s.
Startup in native mode, 0.007s.
Remember that, to test the native mode, you have to set up GraalVM on your machine. Also, Kogito is still in its early days, and version 0.3.0 will be released this week (August).
Knowing the future of business automation, I suggest you try the extension and join the Kogito community!
Learn more about Kogito
To test Kogito yourself and learn a little bit more about the project, please refer to:
Understand the migration process from Drools to Kogito from an engineering point of view. In this video, Mario Fusco, a Red Hat Principal Software Engineer, also shows performance and implementation with Kogito:
Here is a forum for discussions around Kogito Development: