🇫🇷 Camunda 8 – Connectors vs Job Workers: What's the Difference and When to Use What?

In Camunda 8, the workflow engine never directly executes the business logic.

All execution is done outside the engine, asynchronously and event driven.

To do this, Camunda 8 offers two main mechanisms:

1️⃣ Camunda 8 Connectors (out-of-the-box integrations, low-code)
2️⃣ Camunda 8 Job Workers (custom workers, full code)

Both are based on the Zeebe jobs mechanism, but their uses are very different.


⭐ 1. Overview – Camunda 8 Execution Model

Camunda 8 is:

✔ Cloud-native
✔ Distributed
✔ 100% Asynchronous
✔ Event-driven

👉 The orchestration-only
👉 engine All logic is executed by external executors

➡️ Connectors and Workers are both:

  • External

  • Scalables

  • Decoupled from the engine

  • Resilient


⭐ 2. What is a Camunda 8 Connector?

Connectors are ready-to-use integration components, provided by Camunda.

They allow a BPMN process to be connected to external systems without writing code.

🔹 Key features

✔ Low-code / no-code
✔ Configuration via Web Modeler
✔ Running as managed
✔ workers Secure (secret management)
✔ Quick to implement

🔹 Common Connectors

  • HTTP/REST

  • Kafka

  • Email

  • Slack

  • Webhook

  • AWS / Azure

  • Google Sheets


⭐ 3. Example: HTTP Connector (no code)

In the BPMN:

  • Add a Service Task

  • Choose Connector

  • Select HTTP Connector

Example configuration:

Method: POST URL: https://api.example.com/approve Headers: Authorization: Bearer {{token}} Body: {{payload}}

✔ No Java code / Node
✔ Simple
✔ maintenance Ideal for standard integrations


⭐ 4. Qu’est-ce qu’un Camunda 8 Job Worker?

Un Job Worker est un service applicatif personnalisé qui:

✔ S’abonne à un type de job
✔ Récupère les jobs depuis Zeebe
✔ Exécute une logique métier spécifique
✔ Complète ou échoue le job

Les workers peuvent être écrits en :

  • Java

  • Node.js

  • Go

  • Python


⭐ 5. Exemple : Job Worker personnalisé (Java)

client.newWorker() .jobType("validate-payment") .handler((jobClient, job) -> { Map<String, Object> vars = job.getVariablesAsMap(); // logique métier personnalisée jobClient.newCompleteCommand(job.getKey()).send(); }) .open();

✔ Logique complexe
✔ Contrôle total
✔ Gestion avancée des erreurs


⭐ 6. Comparaison détaillée – Connectors vs Workers

CritèreConnectorsJob Workers
TypeLow-codeFull-code
Mise en placeTrès rapidePlus longue
LangageConfigurationJava / Node / Go / Python
Logique métierLimitéeIllimitée
MaintenanceFaibleMoyenne à élevée
PerformanceOptimiséeDépend du code
Gestion erreursIntégréePersonnalisée
Cas d’usageIntégrations simplesLogique complexe

⭐ 7. Gestion des erreurs et retries

🔹 Connectors

✔ Retries automatiques
✔ Gestion standardisée des erreurs
✔ Configuration simple

🔹 Workers

✔ Stratégies personnalisées
✔ Circuit breakers
✔ Fallbacks
✔ Observabilité avancée


⭐ 8. Sécurité

Connectors

✔ Gestion centralisée des secrets
✔ Moins de risques de fuite
✔ Idéal pour API standards

Workers

✔ Contrôle total
❗ Responsabilité totale
✔ Adapté aux politiques sécurité strictes


⭐ 9. Quand utiliser les Connectors ?

Choisissez les Connectors si :

✔ Vous voulez aller vite
✔ L’intégration est standard
✔ Vous préférez la configuration au code
✔ La maintenance doit être minimale
✔ Les équipes métier modélisent les processus

Exemples :

  • Appels REST

  • Notifications Slack / Email

  • Webhooks

  • Publication Kafka simple


⭐ 10. Quand utiliser les Job Workers ?

Choisissez les Workers si :

✔ Vous avez une logique métier complexe
✔ Plusieurs systèmes sont impliqués
✔ Des transformations avancées sont nécessaires
✔ Vous voulez un contrôle total
✔ Vous avez déjà une architecture microservices

Exemples :

  • Paiement

  • Détection de fraude

  • Agrégation de données

  • Intégration legacy

  • Orchestration complexe


⭐ 11. Bonne pratique: utiliser les deux ensemble

👉 Les architectures réelles utilisent Connectors + Workers:

  • Connectors → intégrations simples

  • Workers → cœur métier

Résultat :
✔ BPMN plus lisible
✔ Moins de code
✔ Meilleure maintenabilité
✔ Scalabilité optimale


⭐ 12. Erreurs courantes à éviter

❌ Using a Worker for a Simple HTTP
❌ Call Putting Too Much Logic in a Connector
❌ Storing Hard
❌ Secrets Forgetting Timeout
❌ Management Thinking of Camunda 8 as Camunda 7


🎉 Conclusion

In Camunda 8:

Connectors = speed, simplicity, standardization
Job Workers = power, flexibility, control

Simple rule:

  • 🔹 Simple integration → Connector

  • 🔹 Complex Logic → Worker

  • 🔹 Enterprise systems → both combined

Mastering Connectors vs Workers is essential to building robust and scalable cloud-native workflows with Camunda 8.

💼 Support professionnel disponible

Si vous rencontrez des problèmes sur des projets réels liés au développement backend d’entreprise ou à l’automatisation des workflows, je propose des services de conseil payants, de débogage en production, de support projet et de formations ciblées.

Les technologies couvertes incluent Java, Spring Boot, PL/SQL, Azure, ainsi que l’automatisation des workflows (jBPM, Camunda BPM, RHPAM).

📧 Contactishikhanirankari@gmail.com info@realtechnologiesindia.com

🌐 WebsiteIT Trainings | Digital lectern | Digital rostrum | Digital metal podium 




Comments

Popular posts from this blog

jBPM Installation Guide: Step by Step Setup

Scopes of Signal in jBPM

OOPs Concepts in Java | English | Object Oriented Programming Explained