Use cases

Git push to deploy to Camunda Cloud

by Josh Wulf on Feb 13 2020 in GitHub Use cases Resources .

Using the Zeebe Action for GitHub, you can automate your GitHub repo to deploy BPMN models to Camunda Cloud when you push to a specific branch. In this quick tutorial, I show you how to configure your GitHub repo to deploy all BPMN models in the bpmn directory of your repo on a push to master. If you don’t have a Camunda Cloud account yet, you can join the public beta to get one. Read more…

Complex multi-repo builds with GitHub Actions and Camunda Cloud

by Josh Wulf on Feb 10 2020 in GitHub Use cases .

BLUF (Bottom-line Up-front): GitHub Actions are AWESOME and will change your life, but you risk losing yourself in a microservices architecture of repos, or have to go monolith once you get a few dependent projects or cross service provider boundaries - unless you orchestrate. I show you how I did it in this article. Get access to the Camunda Cloud Public Access Beta here. Use the Zeebe GitHub Action to orchestrate multi-repo builds with Zeebe and Camunda Cloud. Read more…

Incident Alert Exporter

by Josh Wulf on Feb 3 2020 in Resources Use cases .

I took a break today from the article I’m working on about “Orchestrating GitHub Actions with Zeebe and Camunda Cloud” (stay tuned, because it is lit) to build an exporter for Zeebe, one that can alert you whenever an incident is raised - for example via Pushover, Pager Duty, or by calling you via the Twilio API. If you just want to see the code, it is on GitHub: Zeebe Incident Alerter. Read more…

Going to Zero-Scale Zeebe on Camunda Cloud with Cloudflare Workers

by Josh Wulf on Dec 3 2019 in Cloud Slack Use cases .

I get questions about running Zeebe at “zero-scale”. That means workers that consume no resources when there are no tasks to perform. The Zeebe service on Camunda Cloud includes a generic HTTP-Worker that can be used to achieve this. The HTTP-Worker polls for jobs of type “Camunda-HTTP”, and then invokes a REST endpoint based on the HTTP verb and URL set in the task headers. If you are not on Camunda Cloud you can use zeebe-http-worker, or just write your own. Read more…

Operational Monitoring: Zeebe Cloud Canary

by Josh Wulf on Nov 3 2019 in Use Cases .

Designing a resilient system means planning for, and alerting on various failure states. The Zeebe Cloud Canary npm package adds alerting to your Node.js Zeebe applications. There are a few things that can go wrong in a Zeebe system that you definitely want to surface operationally. Your client applications might exception and halt. The broker might fail - whether due to a hardware failure or some edge-case condition that puts it in an infinite restart loop while recovering (it could be memory constrained, for example, and rescheduled by K8s before it can recover its state on boot up). Read more…

Zeebe and Open Democracy in the Netherlands

by Josh Wulf on Oct 20 2019 in Podcast Use Cases .

Jesse Van Muijden and his team, working in the Ministry of Social Welfare in the Netherlands, have developed a Zeebe-based system that brings transparency to government processes for citizens. In this interview, we talk about the tech stack: Node.js, Kafka.js, Java, Docker, and Zeebe, the innovative solution they’ve designed, and Jesse’s experience developing on Zeebe in a “beyond agile” project, even as Zeebe has been undergoing development. Check out the source code for their project on GitLab. Read more…

Zeebe Message Correlation

by Josh Wulf on Aug 14 2019 in Use Cases .

Message correlation is a powerful feature in Zeebe. It allows you to target a running workflow with a state update from an external system, asynchronously. You can use it to do things like: Update a workflow instance when an item ships from a warehouse, or a customer payment is processed. Cancel a running workflow when a user quits from a game server. Any event in the external world that influences your workflow state. Read more…

Zeebe Workflows Inside a REST Request/Response

by Josh Wulf on Aug 1 2019 in Use Cases .

In the Zeebe Slack and the Forum, a number of users have been inquiring about initiating a Zeebe workflow via a REST request, and returning the outcome of the workflow in the REST response. Zeebe workflows are fully decoupled, asynchronous, and have no awaitable outcome. This means there is nothing out-of-the-box right now to do this. We are evaluating demand for this feature in GitHub, both in terms of its eventual shape and its priority. Read more…

Real World BPMN with Zeebe and Minecraft

by Josh Wulf on Jun 17 2019 in Use Cases .

Here is a great example of how Zeebe and BPMN can be used to solve real-world business problems - in this case, in Minecraft!

Kids love to play Minecraft, and transferring that engagement to learning to code is a Good Thing(tm) Ultima VI recreated in Minecraft

Read more…

Data Pipeline Orchestration With Zeebe (And An Example Map/Reduce Implementation)

by Josh Wulf on May 8 2019 in Use Cases .

Zeebe can be used to orchestrate data-processing pipelines, such as image processing or machine learning. As discussed in Google’s Site Reliability Engineering book, one issue with data-processing pipelines is responding in a timely fashion to increased business demands. Zeebe is a stateful workflow engine, and state doesn’t scale horizontally - but Zeebe does. So you want to design your pipelines in a way that encapsulates and isolates state and allows you to scale up workers in the parts where you can parallelize work. Read more…