{"repo":"javactrl/javactrl-kafka","free":true,"listed":false,"github":"https://github.com/javactrl/javactrl-kafka","clone":"git clone https://github.com/javactrl/javactrl-kafka.git","description":"Distributed, Scalable, Fault-Tolerant, Minimalistic Workflow Engine - No DAGs, No YAML, No Cumbersome Diagrams, Just Code","language":"Java","stars":18,"topics":["business-process","kafka","kafka-streams","micorservices","microservice-orchestration","microservices-architecture","workflow","workflow-as-code","workflow-engine","workflow-management"],"license":"Apache-2.0","category":"workflow-automation","readme_excerpt":"[!NOTE] Get in touch to see if this tool fits your project! 📩 vitaliy.akimov@gmail.com Kafka Workflow on JVM The project is a new way to define workflows as code. It's minimalistic but feature-complete. It works on JVM with access to anything third-party available for JVM and Kafka Streams. Workflows here are just small and straightforward direct-style Java functions and they are converted into Apache Kafka Streams nodes. Kafka takes all the burden of making such workflows highly available, scalable, durable, fault-tolerant, distributed and so on. In addition, workflows are simple, easy to read, easy to write, easy to debug, easy to maintain, and easy to integrate with other components of Kafka-based infrastructure. Typical use cases include: Business Process Automation Microservices Orchestration Distributed Transactions Infrastructure Provisioning Monitoring and Polling Data Pipelines Apache Kafka is famous for solving these tasks already. However, it requires small event handlers, which are rather difficult to develop, test, maintain and change. For example, it's uncomplicated to introduce small unintended dependencies between the handlers. Tools such as ksqldb help a lot, but they still aren't intended to specify the sequential essence of workflow dependencies. This doesn't mean this library is a kind of replacement for ksqldb. Instead, users can benefit from operating them together. Say, ksqldb as a rules engine, and javactrl as a workflow engine. The subsequent typical","default_branch":null,"files":null,"tree":[],"storefront":"/r/javactrl","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/javactrl/javactrl-kafka/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}