v0.12.0

Fault-Tolerant Sophisticated Business Processes

Infinitic reliably orchestrates your distributed tasks at any scale, with just a few lines of code.

Built with Apache Pulsar
LoyaltyWorkflow
public void start(User user) {
// while this user is active
while (userService.isActive(user)) {
// add points
loyaltyService.incrementPoints(140);
// wait one week
timer(Duration.ofDays(7)).await();
}
}

Introduction

Getting started

Built on top of Apache Pulsar, Infinitic lets us easily orchestrate services distributed on multiple servers - in any complex scenario. With the peace of mind of knowing that a failure somewhere will never break our workflows.

Possible use cases are:

  • microservices orchestration
  • distributed transactions
  • data pipelines operations
  • business processes implementation
  • etc.

Using Infinitic, we get:

  • versatility: we can use loops, conditions, data manipulations instructions provided by the programming language, without being limited by the capabilities of a DSL
  • maintainability: our workflows are easy to understand, defined in one place, and versioned like any other piece of code
  • observability: everything is closely monitored and exposed on dashboards
  • reliability: workflows are immune to services or workers failures

Choose your programming language

Infinitic is currently available in Java and Kotlin.

Click the Java button in the top navigation bar to select the programming language for this documentation.

Infinitic can support more programming languages. Contact us if interested.

Terminology

Learn the different components of Infinitic: Services, Tasks, Workflows, Workers, Clients.

Under The Hood

Learn how workflows processed by Infinitic are fully event-driven, horizontally scalable, and immune to errors.

Workflow Examples

Workflow examples showcasing how easy it is to build complex business processes and how powerful Infinitic is.

Hello World

Step-by-type guide to build our first workflow.

New version 0.11.2!