Blog

27.08.2020. | Author: Gerardo Manzano

Zeebe – Meeting the new kid in town

-Zeebe is workflow engine for microservices orchestration developed by Camunda and made publicly available in late 2019.
-Wait… what ?

-Let’s define first what a workflow engine is, and what the concept of microservices orchestration is all about.

Workflow engine

Software application that manages business processes. It manages what activities should take place after the completion of other activities i.e. sequential flow of activities. This applies not only to activities but to conditions and messages that may occur inside or outside the process being managed, in a sentence, it controls the flow of information, activities and events. A workflow is then a sequence of tasks that accomplish one goal.

Microservices orchestration

This concept has to do with how microservices interact with each other. It is a design pattern where you have one microservice through which every other microservice communicates. Like a conductor in the opera. Every microservice just looks at and communicates with this “conductor” microservice. E.g. If microservice “A” needs something from “B”, it asks the “conductor” service: Get me some info from “B”. Orchestration uses a centralized approach to execute the decisions and it is more crystal clear and has better control.

Where do the two concepts meet?

Orchestration of microservices is useful if you have the following two goals in mind:

  • All activities have to be done in sequential fashion
  • Having the ability to see the process end-to-end flow in both, design and run time

These two goals are totally in sync with what a workflow does.

Zeebe in detail

Zeebe is free and open source. It provides:

  • Visibility. See end-to-end
  • Orchestration. By pushing commands as events that can be consumed by 1 or n microservices.
  • Monitoring capabilities. Like timing, retries, escalation, etc.

Zeebe was designed with the following characteristics in mind:

  • Horizontal scalability
  • Fault tolerance
  • Message driven architecture
  • Publish-subscribe interaction model
  • Visual workflows modeled in BPMN 2.0 (there are limited capabilities)

Similar products on the market

In order to imagine and visualize the dimension of an applications of this kind, let’s say that, microservice orchestration through a workflow is done already by big players in different industries, examples are:

Netflix https://netflix.github.io/conductor/

Before you go on, you need to know that most existing products have more features than Zeebe. The logic here is for Zeebe to be lightweight, simple, and focused on scalability.

Try it out

If you want to know more about Zeebe, the following resources are available:

Download and install: https://docs.zeebe.io/introduction/install.html

Getting started tutorial, step by step: https://docs.zeebe.io/getting-started/

If you have problems or want to deepen even know more, go to:

Website: https://zeebe.io/

Community: https://zeebe.io/community/

Forum: https://forum.zeebe.io/

Blog: https://zeebe.io/blog/

Docs: https://docs.zeebe.io/

More Blog articles

04.04.2022.

Maler oder Macher sein

Author: Mirko Pawlak

Digitale Transformation ohne Grenzen. Ich bin Prozessmacher. Ich hocke tief drinnen im Maschinenraum und schau mir an, was das Unternehmen einzigartig macht. Ich tu das gern, denn jeder Prozess ist lebendig und einzigartig. Es gibt einen Anfang, dann passiert etwas und am Ende ist es vorbei. Wie geht man am besten mit seinen Prozessen um? […]

read more
02.12.2021.

How to deploy a Camunda Spring Boot application to a shared application server

Author: Maximilian Kamenicky

Context Do you still remember our Blog: How to deploy a Camunda Spring Boot application to an external application server? In that blog, my colleague Gerardo Manzano Garcia explained the steps necessary to run a spring boot application on a dedicated application server i.e. an external Tomcat. In other words, run the spring boot application […]

read more
15.11.2021.

Ways to integrate Kafka with Databases

Author: Denis Savenko

Kafka is a great instrument. It is widely used in event-driven architectures, and it does the job perfectly fine. However, this is not the only use-case for it. Kafka is also very well suitable for data replication and ingestion use-cases, as well as for building modern ETL or ELT pipelines. The most noteworthy reasons for […]

read more