Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Designing Resilient Platforms with Workflow Orc...
Search
Mehmet Sezer
December 15, 2024
Programming
170
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Designing Resilient Platforms with Workflow Orchestration
Mehmet Sezer
December 15, 2024
Other Decks in Programming
See All in Programming
Apache Hive: Toward a Cloud Native Lakehouse
okumin
0
160
ビデオ通話が繋がる0.2秒で何が起きているのか
supurazako
2
150
【SRE NEXT 2026 Lunch Session】一人目専任SREの立ち上げを加速する ― AIと進めたオンボーディングで2分を0.04秒にした話
pkshadeck
PRO
0
3.2k
【やさしく解説 設計編 #1】「ドメイン駆動」と「実装駆動」ってなに? 〜設計の考え方を、たとえ話で学ぼう〜
panda728
PRO
1
140
Claude Opus 4.6以後の受託開発エンジニアの変化(Claude Code開発ノウハウ大公開スペシャルbyクラスメソッド)
iidatakuma
1
880
2年かけて Deno に DOMMatrix を実装した話 / How I implemented DOMMatrix in Deno over two years
petamoriken
0
180
音楽のための関数型プログラミング言語mimiumにおける多段階計算の活用
tomoyanonymous
1
360
[RVD26] Vibe Architecture en 2040 : Darwin a-t-il (enfin) eu raison des architectes ?
alexandretouret
0
110
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
430
PHP初心者セッション2026 〜生成AIでは見えない裏側を知る:今だからLAMPを通して仕組みを学ぶ〜
kashioka
0
710
The Bowling Game- From Imperative to Functional Programming - Part 1
philipschwarz
PRO
0
350
AWS DevOps AgentのAzure接続機能を検証して見えた活用法/Use Cases Verified for the AWS DevOps Agent's Azure Connectivity Feature
masakiokuda
0
140
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
46
8.2k
Mind Mapping
helmedeiros
PRO
1
290
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
62
45k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.5k
Producing Creativity
orderedlist
PRO
348
40k
Building the Perfect Custom Keyboard
takai
2
820
Google's AI Overviews - The New Search
badams
0
1.1k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.7k
Faster Mobile Websites
deanohume
310
32k
Making the Leap to Tech Lead
cromwellryan
135
10k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Transcript
Mehmet Sezer Designing Resilient Platforms with Workflow Orchestration
About me
Reconciliation Process Developer I need a database Desired State
Platform Desired State Current State Reconciliation Process Observe Adjust
Resilient Requirements Replication Database Creation
Requirements Database Creation
Database Creation if there is a problem it can TAKE
WEEKS to create Can run parallel cluster creation for different regions
Requirements Replication
Replication Istanbul Ankara replication
Replication Can create replication between multi-region clusters Need to WAIT
for two clusters to be created successfully
Resilient Requirements
Resilient Need to overcome challenges to ensure EVENTUALLY success
How? Resilient Requirements Replication Database Creation
Let’s Code
Traditional Programming
Traditional Programming what if it takes days?
Traditional Programming what if it returns error?
Kafka Event streaming platform Publish, subscribe, and process messages efficiently.
Ideal for building data pipelines and event-driven systems, ensuring high throughput and reliability.
Kafka
Kafka Need to store database created events to understand all
region of the cluster is created. Race condition (what happen if two events come in same time?)
Kafka Still need a custom error management
Kafka Need to manage Kafka components
Kafka Cognitive Load
Business Process Modeling Notation(BPMN) Flow chart method that models the
steps of a planned business process from end to end
Create Replication Activity Istanbul Database Creation Activity Ankara Database Creation
Activity Done Developer Request Multi- Region Database Business Process Modeling Notation(BPMN)
Temporal Temporal is an open-source workflow orchestration platform. State Persistence
Built-in support for retries, timeouts, scheduled and long-running tasks. Support: Go, Java, PHP, Python, TypeScript .NET, Clojure, Scala, Ruby
Temporal
Temporal
Temporal
Temporal States Scheduled Scheduled Execution Started Started Started Execution Completed
Completed Completed Execution Failed failed failed Ready to process, worker can poll and start execution
Temporal
Temporal
Temporal Execution of code is stopped Will continue from BEGINNING
when an activity is completed.
Temporal Both activities worked successfully
Event Status Payload Istanbul Region Database Creation Completed ... Ankara
Region Database Creation Completed ... Temporal Temporal Event History Example
Event Status Payload Istanbul Region Database Creation Completed ... Ankara
Region Database Creation Completed ... Temporal Temporal Event History Example
Event Status Payload Istanbul Region Database Creation Completed ... Ankara
Region Database Creation Completed ... Temporal Event History Example Temporal
Event Status Payload Istanbul Region Database Creation Completed ... Ankara
Region Database Creation Completed ... Temporal Event History Example Temporal
Event Status Payload Istanbul Region Database Creation Completed ... Ankara
Region Database Creation Completed ... Temporal Event History Example Temporal
Event Status Payload Istanbul Region Database Creation Completed ... Ankara
Region Database Creation Completed ... Temporal Event History Example Temporal
Event Status Payload Istanbul Region Database Creation Completed ... Ankara
Region Database Creation Completed ... Replication Completed ... Temporal Temporal Event History Example
Temporal vs Traditional
Temporal Still can take long-time
Temporal Need to create single-region database
Temporal
Temporal
Temporal
Temporal
Temporal
Temporal
Temporal
mehmetsezerr Thank You mhmtszr Interested in joining us? mehmet.sezer