Async Before / After dans Camunda — Pourquoi Votre Processus Se Bloque
Un problème très fréquent en production Camunda:
« Mon processus se bloque… mais aucune erreur n’apparaît »
La cause principale :
le processus s’exécute dans une seule transaction base de données.
Camunda exécute plusieurs étapes BPMN dans la même transaction tant qu’on ne définit pas de frontière transactionnelle.
Donc si une étape bloque → tout le processus bloque.
La solution: Async Before / Async After
Qu’est-ce que Async dans Camunda?
Async crée une frontière de transaction.
Au lieu d’exécuter :
Tâche A → Tâche B → Tâche C
Camunda sauvegarde l’état puis continue via le Job Executor.
Sans Async (Transaction Unique)
Problème
Si la tâche B dure 20 secondes :
verrou base de données maintenu
interface bloquée
autres instances bloquées
deadlock possible
Async Before
Crée un point de reprise avant l’exécution
Utilisation
appel API externe
logique lente
réseau
Async After
Crée un point de reprise après l’exécution
Utilisation
avant gateway
flux parallèles
éviter optimistic locking
Scénario Critique Production
Sans async :
Service Task → Gateway
Le gateway s’évalue dans la même transaction → optimistic locking
Avec async after :
nouvelle transaction → stable
Où Async est Obligatoire
| Élément | Async |
|---|---|
| API externe | Before |
| Gateway parallèle | After |
| User Task | After |
| External Task | Before |
| Java Delegate long | Before |
Erreur Courante
Ajouter async seulement au début du process.
Cela ne protège pas les tâches internes.
Async doit être placé aux points de risque.
Règle d’Architecture
Tout appel distant = Async Before
Tout gateway parallèle = Async After
Astuce Debug
Si processus bloqué + CPU DB élevé → frontière async manquante.
📚 Lectures recommandées
Pour améliorer la stabilité Camunda:
👉 https://shikhanirankari.blogspot.com/search/label/French
Lire notamment :
Ces sujets sont directement liés aux transactions.
Conseil Final
BPMN est rapide
Les transactions sont lentes
Les frontières async protègent votre moteur.
💼 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, CMS, ainsi que l’automatisation des workflows (jBPM, Camunda BPM, RHPAM, Flowable), DMN/Drools.
📧 Contact: ishikhanirankari@gmail.com | info@realtechnologiesindia.com
🌐 Website: IT Trainings | Digital lectern | Digital rostrum | Digital metal podium
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, CMS, ainsi que l’automatisation des workflows (jBPM, Camunda BPM, RHPAM, Flowable), DMN/Drools.
📧 Contact: ishikhanirankari@gmail.com | info@realtechnologiesindia.com
🌐 Website: IT Trainings | Digital lectern | Digital rostrum | Digital metal podium
Comments
Post a Comment