Slide 1

Slide 1 text

Building Event Driven Apps with Dapr in Kubernetes SivamuthuKumar August 5, 2020

Slide 2

Slide 2 text

Sivamuthu Kumar Technical Advisor, Architect, Dev Advocate, Cloud, Mobile, IoT, ML Orlando, FL ksivamuthu ksivamuthu ksivamuthu

Slide 3

Slide 3 text

Dapr Distributed Application Runtime https://dapr.io

Slide 4

Slide 4 text

Distributed Application Runtime Portable event-driven runtime Building event driven, stateless and stateful applications Building blocks for cloud and edge Standard APIs for portability and extensibility Sidecar architecture and supported infrastructures Developer language SDKs and frameworks

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

Sidecar Architecture Standalone Kubernetes

Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

Demo

Slide 10

Slide 10 text

“frontend” “cart” Post http://localhost:3500/v1.0/invoke/cart/method/checkout { "user":"johndoe", "cart":"0001" } Post http://10.0.0.2:8000/checkout { "user":"johndoe", "cart":"0001" } Service invocation Microservice building blocks

Slide 11

Slide 11 text

App “myApp” { "name": "Tatooine" } Get http://localhost:3500/v1.0/state//planet Post http://localhost:3500/v1.0/state/ [{ "key": "weapon", "value": "DeathStar" }, { "key": "planet", "value": { "name": "Tatooine" } }] key value myApp- weapon "DeathStar" myApp-planet { "name": "Tatooine" } State management: key/value Microservice building blocks State store of your choice CosmosDB AWS DynamoDB …others

Slide 12

Slide 12 text

Subscribe Publish Post http://localhost:3500/v1.0/publish/ "topic":"order", "data":{ "user":"johndoe", "item":"ZeroDay" }, “cart” Publish and subscribe Microservice building blocks “shipping” Post http://10.0.0.5:8005/order "data":{ "user":"johndoe", "item":"ZeroDay" } “email” Post http://10.0.0.4:8004/order

Slide 13

Slide 13 text

App Get / Post http://localhost:8000/trigger { "user":"johndoe" } Redis SQS Event Hubs Kafka Redis Kafka SQS Event Hubs Resource triggers: Input Microservice building blocks

Slide 14

Slide 14 text

{ "data": { "sku":"v100", "quantity":"50" } } Post http://localhost:3500/v1.0/bindings/myDatabase Resource bindings: Output Microservice building blocks App “myApp” DynamoDB Redis Event Hubs CosmosDB Kafka Twilio Redis DynamoDB Kafka Twilio Event Hubs CosmosDB

Slide 15

Slide 15 text

App Insights Datadog Instana Jaeger SignalFX Prometheus + many more App Insights Azure Monitor + many more Datadog Instana Jaeger SignalFX Prometheus Distributed tracing and diagnostics Microservice building blocks App “frontend” App “backend” OpenCensus

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

No content

Slide 18

Slide 18 text

Reference • https://dapr.io • https://github.com/dapr • Twitter - @daprdev • https://dev.to/abhirockzz/dapr-qna-34m5 • Aaron Schlesinger & Jennifer Davis – CloudNative Wednesdays https://www.twitch.tv/arschles • https://github.com/ksivamuthu/cloud-dapr-demo

Slide 19

Slide 19 text

Thank you Sivamuthu Kumar ksivamuthu