BPMCon 2016: Camunda in der Cloud, Jakob Freund und Daniel Meyer, Camunda Services GmbH

56
Camunda in der Cloud Jakob Freund, Daniel Meyer

Transcript of BPMCon 2016: Camunda in der Cloud, Jakob Freund und Daniel Meyer, Camunda Services GmbH

Page 1: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Camunda in der Cloud

Jakob Freund, Daniel Meyer

Page 2: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH
Page 3: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH
Page 4: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH
Page 5: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH
Page 6: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH
Page 7: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH
Page 8: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH
Page 9: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH
Page 10: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Und was macht Camunda?

Page 11: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH
Page 12: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

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}

},

Page 13: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH
Page 14: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH
Page 15: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

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

Page 16: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Beispiel: Sparta Systems

Page 17: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Modellierung in der Cloud

Page 18: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Kommunikation vs. Dokumentation

Page 19: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

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.

Page 20: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

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.

Page 21: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Live Demo

Page 22: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Automatisierung

Page 23: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

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

Page 24: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Hoher Throughput / Server

Page 25: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

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)

Page 26: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

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

Page 27: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Testserver

Page 28: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

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)

Page 29: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH
Page 30: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Charakteristik von HW ausnutzen

Sequential Write Random Write

370 MB/s 2 – 30 MB/s

Page 31: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Horizontale Skalierbarkeit

Page 32: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Cloud

“Prinzipiell unbegrenzt und flexibel verfügbare Rechen-Ressourcen”

Page 33: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

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

Page 34: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

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

Page 35: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

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!

Page 36: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

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

Page 37: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Keine Abhängigkeit vonrelationalen Datenbanken

Page 38: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

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 …)

Page 39: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Native Unterstützung zentraler Cloud-Paradigmen (Microservices, Serverless etc.)

Page 40: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Der richtige Ansatz?

Service

<<call>>

AnotherService

<<call>>

Page 41: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Problem: Flexibilität

WorkflowEngine

Microservice 1

Microservice 2

Microservice 3

Start / Stop?

Page 42: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Problem: Skalierung

WorkflowEngine

Service

Servicerechnet

Engine blockiert,Ressourcenwerden gehalten

Request

Respose

Page 43: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH
Page 44: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Problem: Service On Premise?

?<<call>>

Page 45: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Service Tasks neu gedacht!

Service

<<subscribe>>

AnotherService

<<subscribe>>

CamundaClient

Page 46: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Gelöst: Flexibilität

WorkflowEngine

Microservice 1

Microservice 2

Microservice 3

Start / Stop

<<subscribe>>

<<unsubscribe>>

Page 47: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Gelöst: Skalierung

WorkflowEngine

Service

Servicerechnet

Engine nicht blockiert,Keine Ressourcenwerden gehalten

1. Fetch Task

2. Complete Task

Page 48: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Gelöst: Service on Premise

<<subscribe>>

Page 49: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Unterschiedliche Programmiersprachen

WorkflowEngine

Microservice 1Java

Microservice 2C#

Microservice 3C++

<<subscribe>>

<<subscribe>>

<<subscribe>>

Page 50: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

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.

Page 51: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

“Serverless”

WorkflowEngine

AWS LambdaIntegration

<<subscribe>>

BPMN Code

Page 52: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Next Steps

Page 53: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Just try it:

https://dmn.camunda.cloud

Page 54: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Ihre Ansprechpartner:

Jan Höppner

BerndRücker

Jakob Freund

Robert Gimbel

DanielMeyer

Page 55: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Ihre Ansprechpartner:

Jan Höppner

BerndRücker

Jakob Freund

Robert Gimbel

DanielMeyer

Page 56: BPMCon 2016: Camunda in der Cloud,  Jakob Freund und Daniel Meyer, Camunda Services GmbH

Vielen Dank!