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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Mehmet Sezer
December 15, 2024
Programming
150
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
Oxcを導入して開発体験が向上した話
yug1224
4
300
エージェンティックRAGにAWSで入門しよう!
har1101
8
1.4k
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
480
AI 時代のソフトウェア設計の学び方
masuda220
PRO
29
12k
Spec-Driven Development with AI-Agents: From High-Level Requirements to Working Software
antonarhipov
2
480
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
230
TSKaigi Night Talks 2026_TypeScriptでサプライチェーンの整合性を型に閉じ込める
geekplus_tech
0
330
ECSアプリログをFireLensでコスト削減しようとしたけど諦めた話 in Fargate×Node.js
akihisaikeda
2
4k
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
560
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
140
The Arts and Crafts of Work in the AI Era — Toward Mastery in Software Development
kuranuki
1
740
Why Laravel apps break—Mastering the fundamentals to keep them maintainable
kentaroutakeda
1
340
Featured
See All Featured
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
290
A designer walks into a library…
pauljervisheath
211
24k
A Tale of Four Properties
chriscoyier
163
24k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.2k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.3k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
It's Worth the Effort
3n
188
29k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
470
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.4k
We Have a Design System, Now What?
morganepeng
55
8.2k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.8k
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