bpmcon 2016: camunda in der cloud, jakob freund und daniel meyer, camunda services gmbh
TRANSCRIPT
Camunda in der Cloud
Jakob Freund, Daniel Meyer
Und was macht Camunda?
Element Templates
[{
"name": "Email Task","id": "webinar.MailDelegate","appliesTo": [
"bpmn:SendTask"],"properties": [
{"label": "Implementation Type","type": "String","value": "webinar.MailDelegate","editable": false,"binding": {
"type": "property","name": "camunda:class"
}},{
"label": "Sender","type": "String","binding": {
"type": "camunda:inputParameter","name": "sender"
},"constraints": {
"notEmpty": true}
},
Camunda provides
• Generic BPM
• developer-friendly
Core Developers create
• Domain Specific BPM
• Low-code
Citizen Developers create
• Workflow Solutions
Domain specific low-code BPM
Target Group: Big Organizations
Target Group: Software Vendors
Beispiel: Sparta Systems
Modellierung in der Cloud
Kommunikation vs. Dokumentation
BPM-Modellierung in der Cloud – Was will ich?
Ich will meine Ideen zu Workflows und Entscheidungen festhalten.
Ich will diese Ideen mit anderen teilen, um
von ihnen Feedback zu bekommen, so dass ich meine Ideen
verbessern kann.
sie darüber zu informieren, wie bei uns (in Zukunft) gearbeitet
wird.
(Ich will meine Ideen durch eine Engine ausführen lassen.)
Philosophie: Wir helfen, Geschäftsprozesse zu verbessern.
Out of Scope
• Dokumentation aus Compliance-Gründen („MA Risk“, „ISO 9001“, …)
• Mitarbeiter-Handbücher
• Prozess-Portal, um Modelle zu veröffentlichen
Allgemein: Umfangreiche Prozessdokumentation und DACH-spezifische Anforderungen
Philosophie: Wir ignorieren alles, was für uns keinen klaren, direkten Einfluss auf das Thema Verbesserung von Geschäftsprozessen hat.
Live Demo
Automatisierung
Camunda morgen
• Throughput 375x
• Unendliche horizontale Skalierbarkeit
• Keine Abhängigkeit von relationalen DB
• Native Unterstützung zentraler Cloud-Paradigmen (Microservices, Serverless etc.)
0
100000
200000
300000
400000
500000
600000
700000
800000
Heute Morgen
Ops/s
Hoher Throughput / Server
Moderne Hardware
State of the Art
HDD (Schreiben) ~370 MB/s*
HDD (Lesen) ~500 MB/s*
Netzwerk ~ 1.2 GB/s
Speicherbus ~ 102 GB/s **
* Samsung SM843T SSD
** Intel® Xeon® Processor E7-8870 v3 (18 Cores, 45MB Cache)
Was ist theoretisch möglich?
Workflow Engine
Service
Another Service
Webappstart
call
call
Netzwerk 1kB / Request=> 1.2M Req/s
Persistenz 1kB / Flow Node=> 378K Ops/s / SSD=> 90K Workflow Instances / s / SSD
Testserver
Unsere Testserver
Testserver* State of the Art
HDD (Schreiben) ~180MB/s ~370 MB/s**
HDD (Lesen) ~370MB/s ~500 MB/s**
Netzwerk ~120 MB/s (1GbE) ~ 1.2 GB/s (10GbE)
Speicherbus ~32 GB/s ~ 102 GB/s ***
* HP ProLiant DL360 G7, 2x Xeon X5650 (6core, 2,66GHz, 12MB Cache), 2011
** Samsung SM843T SSD
*** Intel® Xeon® Processor E7-8870 v3 (18 Cores, 45MB Cache)
Charakteristik von HW ausnutzen
Sequential Write Random Write
370 MB/s 2 – 30 MB/s
Horizontale Skalierbarkeit
Cloud
“Prinzipiell unbegrenzt und flexibel verfügbare Rechen-Ressourcen”
Begrenzte Skalierung
0
500
1000
1500
2000
2500
3000
3500
4000
1 2 3 4 5 6 7 8 9
Durchsatz Ops/s
Camunda 7
SQL Datenbank
Camunda 7Camunda 7
Bottleneck
Max Kapazitäterreicht
Ziel: Unbegrenzte Skalierung
0
0,5
1
1,5
2
2,5
1 2 3 4 5 6 7 8 9 10
Millio
ne
n
Durchsatz Ops/sServers
Best Price Performance
Ziel: 1Million Ops/s
Beispiel 1 Beispiel 2
Ops / Sekunde / Server 200K 2K
Benötigte Server 5 500
Preis / Server / Stunde 1€
Preis Total / Monat 3600€ 360.000€
Single Server Throughput muss trotz Skalierbarkeit in der richtigen Größenordnung sein!
Neue Einsatzmöglichkeiten für BPM / Workflow
Branche Theoretisch möglich Aktuell erreicht
Telko On-line Autorisierung & Abrechnung von Telefongesprächen
Vertragsabschluss, Provisioning
Post Routing / tracking von Briefen & Paketen
Bearbeitung von Beschwerden
Bank Ausführung von Überweisungen Kontoeröffnung
Flexibel und Transparent dank BPMN
Keine Abhängigkeit vonrelationalen Datenbanken
Datenbank Flexibilität
Nicht beschränkt auf SQL Datenbank
Neue Möglichkeiten:
- Direkte Nutzung von Filesystem
- NoSQL Datenbanken (Cassandra …)
- Verteilter Suchindex (Elastic Search ...)
- Cloud Datenbanken (Amazon Dynamo …)
Native Unterstützung zentraler Cloud-Paradigmen (Microservices, Serverless etc.)
Der richtige Ansatz?
Service
<<call>>
AnotherService
<<call>>
Problem: Flexibilität
WorkflowEngine
Microservice 1
Microservice 2
Microservice 3
Start / Stop?
Problem: Skalierung
WorkflowEngine
Service
Servicerechnet
Engine blockiert,Ressourcenwerden gehalten
Request
Respose
Problem: Service On Premise?
?<<call>>
Service Tasks neu gedacht!
Service
<<subscribe>>
AnotherService
<<subscribe>>
CamundaClient
Gelöst: Flexibilität
WorkflowEngine
Microservice 1
Microservice 2
Microservice 3
Start / Stop
<<subscribe>>
<<unsubscribe>>
Gelöst: Skalierung
WorkflowEngine
Service
Servicerechnet
Engine nicht blockiert,Keine Ressourcenwerden gehalten
1. Fetch Task
2. Complete Task
Gelöst: Service on Premise
<<subscribe>>
Unterschiedliche Programmiersprachen
WorkflowEngine
Microservice 1Java
Microservice 2C#
Microservice 3C++
<<subscribe>>
<<subscribe>>
<<subscribe>>
AWS Lambda
AWS Lambda ist ein serverloser Datenverarbeitungsservice, der Ihren Code beim Eintreten bestimmter Ereignisse ausführt und automatisch für Sie die zugrunde liegenden Datenverarbeitungsressourcen verwaltet.
“Serverless”
WorkflowEngine
AWS LambdaIntegration
<<subscribe>>
BPMN Code
Next Steps
Just try it:
https://dmn.camunda.cloud
Ihre Ansprechpartner:
Jan Höppner
BerndRücker
Jakob Freund
Robert Gimbel
DanielMeyer
Ihre Ansprechpartner:
Jan Höppner
BerndRücker
Jakob Freund
Robert Gimbel
DanielMeyer
Vielen Dank!