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
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
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
in-process GraphQL のすすめ #ginzajs
izumin5210
4
1.3k
Japan Community Day at Kubecon + CloudNativeCon Japan 2026: Learning Container Privilege Control by Building My Own Low-Level Container Runtime
ternbusty
1
160
【やさしく解説 設計編・中級 #6】良いアーキテクチャとは ~ 一本の登り道の、行き先 ~
panda728
PRO
0
220
「人を評価する AI」の設計と実装
ryoyanara
0
210
AI Readyの正体はデータマネジメントだ メダリオン2.0の最前線
freee
PRO
0
290
改善しないと、タスクが回らない。 “てんこ盛りポジション” を引き継いだ情シスの、入社3ヶ月の業務改善録
krm963
0
270
バグを直したら useEffect が消えた
colorful12
2
590
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
470
AIが無かった頃の素敵な出会いの話
codmoninc
1
460
torikago - Ruby::Boxで照らすモジュラモノリスの実行境界
se4weed
1
380
Built Our Own Background Agent at LayerX
layerx
PRO
10
5.6k
リアルな遅延を測る仕様
kota_yata
1
120
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
490
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.5k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
370
The World Runs on Bad Software
bkeepers
PRO
72
12k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
530
AI: The stuff that nobody shows you
jnunemaker
PRO
9
920
The Pragmatic Product Professional
lauravandoore
37
7.4k
KATA
mclloyd
PRO
35
15k
We Have a Design System, Now What?
morganepeng
55
8.3k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
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