Workflow engine
Concept
De Camunda process engine is een Java-gebaseerde workflow- en beslissingsautomatiseringsmotor die BPMN-, CMMN- en DMN-modellen uitvoert. Het zorgt voor de orkestratie van processen, taken en regels, inclusief job scheduling, transactiebeheer en integratie met externe systemen. De process engine zit integraal embedded in de Java-gebaseerde Skryv SpringBoot applicatie. Klik hier voor meer architecturale informatie.
Onderdelen
Job executor
De Job Executor in Camunda is het onderdeel van de process engine dat verantwoordelijk is voor het uitvoeren van asynchrone taken en achtergrondjobs, zoals timers, externe taakpolling en retry-mechanismen. Het werkt met een threadpool om jobs uit de database op te halen, te vergrendelen en parallel uit te voeren, zodat processen niet geblokkeerd worden door lange-running activiteiten.
De instellingen van de job executor moeten afgestemd worden op de verwachte belasting van de applicatie. De Camunda defaults zijn doorgaans niet geschikt voor apps die in productie draaien.
Klik hier voor info over de werking van de job executor op de Camunda 7 documentatiesite.
Klik hier voor info over de configuratie job executor op de Camunda 7 documentatiesite.
Instellingen
Eigenschap | Default | Beschrijving |
Job executor (native Camunda instellingen) | ||
|
| Maximale wachttijd (in ms) voordat een jobacquisitiethread opnieuw probeert jobs op te halen. Voorbeeld intensief gebruikte app (aangepaste AWS-omgeving vereist): 10000 |
|
| Capaciteit van de interne jobqueue; bepaalt hoeveel jobs tegelijk in de wachtrij kunnen staan. Voorbeeld intensief gebruikte app (aangepaste AWS-omgeving vereist): 1024 |
|
| Aantal seconden dat een idle thread in de pool actief blijft voordat deze wordt beëindigd. Voorbeeld intensief gebruikte app (aangepaste AWS-omgeving vereist): 2500 |
|
| Duur (in ms) dat een job vergrendeld blijft voor uitvoering door een specifieke thread. Voorbeeld intensief gebruikte app (aangepaste AWS-omgeving vereist): 180000 |
|
| Maximaal aantal jobs dat in één acquisitieronde wordt opgehaald. Voorbeeld intensief gebruikte app (aangepaste AWS-omgeving vereist): 256 |
|
| Wachttijd (in ms) tussen twee acquisitierondes wanneer geen jobs beschikbaar zijn. Voorbeeld intensief gebruikte app (aangepaste AWS-omgeving vereist): 2500 |
|
| Aantal core threads in de jobexecutor-threadpool; deze blijven altijd actief. Voorbeeld intensief gebruikte app (aangepaste AWS-omgeving vereist): 10 |
|
| Maximaal aantal threads in de jobexecutor-threadpool bij piekbelasting. Voorbeeld intensief gebruikte app (aangepaste AWS-omgeving vereist): 64 |
DocumentTaskBehaviour | ||
|
| Validate documents on task submit |
CamundaConfiguration | ||
|
| Waarde: boolean. Deze parameter bepaalt of de Camunda-engine JSON-serialisatie moet verkiezen bij het verwerken van variabelen en gegevens. Wanneer deze parameter is ingeschakeld (d.w.z. |
|
| Waarde: boolean. Indien |
|
| Waarde: boolean. Indien |
|
| Waarde: boolean. Deze parameter bepaalt of de Camunda-engine compatibiliteit met de Nashorn JavaScript-engine inschakelt. Dit kan nodig zijn voor legacy-applicaties die afhankelijk zijn van Nashorn voor JavaScript-uitvoering. Na update Skryv platform naar Java 17 (zie release note 24.0.X) wordt immers GraalVM gebruikt als de default JavaScript engine. Dit bracht enkele breaking changes met zich mee (zie release note 24.2.X). |
| - | Waarde: boolean. Deze parameter bepaalt of de Camunda REST API-gebruik in de applicatie is ingeschakeld. Als deze parameter op |
|
| Waarde: boolean. Deze parameter eigenschap is toegevoegd via Camunda versie 7.22.5 (zie ook Skryv platform release note 27.0.X). |
Externe info
Klik hier voor externe documentatie over de Camunda process engine.