SlideShare a Scribd company logo
RESILIENCE RELOADED

MORE RESILIENCE PATTERNS
Jisung, Ahn
▸ Original: https://www.slideshare.net/ufried/patterns-of-
resilience
WHY RESILIENCE?
!!
( )


( )


( )
= /
( + )
(Availability)

(MTTF): Mean Time To Failure

(MTTR): Mean Time To Recovery
= /
( + )
( )
8
▸ 1. 

2. 

3. 

4. 

5. 

6. . 

7. 

8.


.
Leslie Lamport


“ ”
▸ Cloud-based systems
▸ Microservices
▸ Zero Downtime
▸ IoT & Mobile
▸ Social



->


Resilience
= /
( + )
Resilience(IT)
▸
▸ ( )
▸ ( )

Isolation
Bulkheads
Loose Coupling
Complete 

Parameter

Checking
Shed Load
Supervision
Latency Control
Bounded Queue
Fan out &

quickest reply
Circuit Breaker
Fail Fast
Timeout
Self-Containment
Idempotency
Relaxed

Temporal

Constraints
Asynchronous

Communication
Event-Driven
Location

Transparency
Stateless
Error Handler
Monitor
Escalation
….
▸ (Recovery) & (Mitigation)
▸ Supervision
▸
▸ (Anti-Fragility)
▸ &
RESILIENCE RELOADED

MORE RESILIENCE PATTERNS
IsolationLoose Coupling
Supervision
Latency Control
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Isolation
Loose Coupling
Latency Control
Supervison
Node Level
System Level
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Isolation Redundancy
Communication

Paradigm
Supporting

Patterns
Bulkhead
Bulkheads( )
▸ ( “ (failure units)”,” (Unit of
mitigation)”)
▸ ( )
▸ . (uService, actor, scs,…)
▸
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Isolation Redundancy
Communication

Paradigm
Supporting

Patterns
Communication Paradigm
▸ Request-response <-> messaging <-> events
▸ ,
▸
▸
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Isolation Redundancy
Communication

Paradigm
Supporting

Patterns
Redundancy( )
▸
▸
▸
▸
(Crash)
(Omission)
(Timing)
(Response)
(Byzantine)
,






(Crash)
(Omission)
(Timing)
(Response)
(Byzantine)
(Crash)
(Omission)
(Timing)
(Response)
(Byzantine)
Note: leaky bucket http://wooner2.tistory.com/284
▸ Leaky bucket: , bucket 30
. 15 .
10 5 30
15 . bucket 15
.... ..... ?
bucket . 30 15 5
(Be) 20 bucket .
30 15 .
interval 20 ... 30
20 . 30
. 1
120 .
(Crash)
(Omission)
(Timing)
(Response)
(Byzantine)
Note: leaky bucket http://wooner2.tistory.com/284
(Crash)
(Omission)
(Timing)
(Response)
(Byzantine)
▸ Voting:
. (DMR)
.
.
(TMR) . 2 : 1
. ,
.
▸ Recovery Blocks:
.

.
.
.
▸ Routine Exercise:
▸ Majority based quorum:
Adaptive weighted sum: 

3 , .
, , .
50%, 80%, 30%
.
100 !
.
∑ = *0.5 + *0.8 + *0.3
60, 70, 80
110 = 60*0.5 + 70*0.8 + 8*0.3
100 .
▸ Synthetic computation
(Crash)
(Omission)
(Timing)
(Response)
(Byzantine)
,
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Isolation Redundancy
Communication

Paradigm
Supporting

Patterns
Stateless
Zero downtime

deployment
Relaxed

temporal

contstraints
Location

transparency
Esclation
Structural
Behavioral
Idempotency
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Node Level
Supporting

Patterns System level
Checksum
Complete

parameter

checking
Circuit breaker
Timeout
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Node Level
Supporting

Patterns System level
Monitor
Heartbeat
Acknowledgement
Watchdog
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Node Level
Supporting

Patterns System level
Voting
Routing checks
Health 

check Synthetic

transaction
Leaky bucket
Fail fast
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Retry
Limited retries
Retry
▸
▸
▸
▸ (Recurring error)
Retry example
// doAction returns true if successful, false otherwise 

boolean doAction(...) {

... }

// General pattern

boolean success = false

int tries = 0;

while (!success && (tries < MAX_TRIES)) {

success = doAction(...);

tries++; 

}

// Alternative one-retry-only variant 

success = doAction(...) || doAction(...);
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Retry
Limited retries
Rollback
Checkpoint
Safepoint
Rollback
▸
▸
▸ check point, safe point
▸ (Recurring error)
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Retry
Limited retries
Rollback
Checkpoint
Safepoint
Roll-forward
Roll-forward
▸
▸ escalation
▸
▸ Roll-fowrard check point, safe point
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Retry
Limited retries
Rollback
Checkpoint
Safepoint
Roll-forward
Reset
Reconnect
Restart
Data reset
Startup

consistency
Reset
▸
▸ -
▸ Reset
▸ ( )
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Retry
Limited retries
Rollback
Checkpoint
Safepoint
Roll-forward
Reset
Reconnect
Restart
Data reset
Startup

consistency
Failover
Failover
▸
▸ -
▸ ,
▸ -
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Retry
Limited retries
Rollback
Checkpoint
Safepoint
Roll-forward
Reset
Reconnect
Restart
Data reset
Startup

consistency
Failover
Read repair
Read repair
▸
▸ -
▸
▸ NoSQL
Note: (digest) , Digest old 

Read repair example
public class FooResolver implements ConflictResolver<Foo> { 

@Override

public Foo resolve(List<Foo> siblings) {

// Insert your sibling resolution logic here

}

}
public class Buddy {

public String name;

public Set<String> nicknames;

public Buddy(String name, Set<String> nicknames) { this.name = name;

this.nicknames = nicknames;

}

}
public class BuddyResolver implements ConflictResolver<Buddy> { 

@Override

public Buddy resolve(List<Buddy> siblings) { 

if (siblings.size == 0) {

return null;

} else if (siblings.size == 1) {

return siblings.get(0);

} else {

// Name is also used as key. Thus, all siblings have the same name 

String name = siblings.get(0). name;

Set<String> mergedNicknames = new HashSet<String>(); 

for (Buddy buddy : siblings) {

mergedNicknames.addAll(buddy.nicknames); 

}

return new Buddy(name, mergedNicknames); 

}

}
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Retry
Limited retries
Rollback
Checkpoint
Safepoint
Roll-forward
Reset
Reconnect
Restart
Data reset
Startup

consistency
Failover
Read repair
Error Handler
Error Handler
▸
▸ ( )
▸
▸ - escalation
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Retry
Limited retries
Rollback
Checkpoint
Safepoint
Roll-forward
Reset
Reconnect
Restart
Data reset
Startup

consistency
Failover
Read repair
Error Handler
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Fallback
Fail

silently
Default value
Alternative action
Fallback
▸ , .
▸
▸ -
▸ -
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Fallback
Fail

silently
Default value
Alternative action
Queue for

resource
Bounded queue
Fresh work

before stale
Finish work

in progress
Queue for resources
▸
▸
▸ -
▸ -
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Fallback
Fail

silently
Default value
Alternative action
Queue for

resource
Bounded queue
Fresh work

before stale
Finish work

in progress
Shed load
Shed Load( )
▸
▸
▸ -
▸ ( )
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Fallback
Fail

silently
Default value
Alternative action
Queue for

resource
Bounded queue
Fresh work

before stale
Finish work

in progress
Shed load
Statically Dynamically
Share load
Share load
▸
▸ ( )
▸
▸ ( )
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Fallback
Fail

silently
Default value
Alternative action
Queue for

resource
Bounded queue
Fresh work

before stale
Finish work

in progress
Shed load
Statically Dynamically
Share load
Deferrable work
Deferrable work( )
▸
▸
▸
▸ ( ) .
Deferrable work example
// Do or wait variant <init batch>

while(<more to process>) {

int load = getLoad(); 

if (load > THRESHOLD) {

waitFixedDuration(); 

} else {

<process next batch of work> 

}

}

void waitFixedDuration() {

Thread.sleep(DELAY); // try-catch left out for better readability

}
// Adaptive load variant <init batch>

while(<more to process>) {

waitLoadBased();

<process next batch of work> 

}

void waitLoadBased() {

int load = getLoad();

long delay = calcDelay(load);

Thread.sleep(delay); // try-catch left out for better readability

}

long calcDelay(int load) { 

// Simple example implementation 

if (load < THRESHOLD) {

return 0L; 

}

return (load – THRESHOLD) * DELAY_FACTOR; 

}
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Fallback
Fail

silently
Default value
Alternative action
Queue for

resource
Bounded queue
Fresh work

before stale
Finish work

in progress
Shed load
Statically Dynamically
Share load
Deferrable work
Marked

data
Marked data
▸
▸
▸ -
▸
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Fallback
Fail

silently
Default value
Alternative action
Queue for

resource
Bounded queue
Fresh work

before stale
Finish work

in progress
Shed load
Statically Dynamically
Share load
Deferrable work
Marked

data
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Let sleeping dogs lie
Hot deployments
Small releases
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Anti-entropy
Routine

maintanace
Routine maintenance
▸ .
▸ .
▸
▸ ,
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Anti-entropy
Routine

maintanace
Spread news
Spread News
▸
▸ (gossip) (epidemic)
.
▸ (Reconciliation) .
▸ ,
▸ Gossip Protocol


https://en.wikipedia.org/wiki/Gossip_protocol

.
. 

.
▸ Epidemic Protocol

gossip protocol virus
▸ Gossip Protocol


https://en.wikipedia.org/wiki/Gossip_protocol

.
. 

.
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Anti-entropy
Routine

maintanace
Spread news
Backup request
Backup request
▸ ( ).
▸ .
▸ ( )
▸ -
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Anti-entropy
Routine

maintanace
Spread news
Backup request
Anti-Fragility
Diversity Jitter
Anti-Fragility
▸
▸ .
▸
▸ ,
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Anti-entropy
Routine

maintanace
Spread news
Backup request
Anti-Fragility
Diversity Jitter
Error injection
Error injection
▸
▸
▸
▸
• Chaos Monkey 

• Chaos Gorilla 

• Chaos Kong 

• Latency Monkey 

• Compliance Monkey 

• Security Monkey 

• Janitor Monkey 

Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
Anti-entropy
Routine

maintanace
Spread news
Backup request
Anti-Fragility
Diversity Jitter
Error injection
▸
▸
▸
▸ ( )
▸ &
▸ /
▸
▸
▸
▸
▸
Core

(Architectural)
Detection Treatment Prevention
Recovery
Mitigation
1)





2)3)



Isolation
Communication

Paradigm
Redundancy
Supporting

patterns
▸ …
▸
▸
▸
▸
▸
▸
▸
.
!

More Related Content

What's hot

CQS
CQSCQS
RAPIDS: ускоряем Pandas и scikit-learn на GPU Павел Клеменков, NVidia
RAPIDS: ускоряем Pandas и scikit-learn на GPU  Павел Клеменков, NVidiaRAPIDS: ускоряем Pandas и scikit-learn на GPU  Павел Клеменков, NVidia
RAPIDS: ускоряем Pandas и scikit-learn на GPU Павел Клеменков, NVidia
Mail.ru Group
 
Cqs v2
Cqs v2Cqs v2
Vertica trace
Vertica traceVertica trace
Vertica trace
Zvika Gutkin
 
Time Series Processing with Solr and Spark
Time Series Processing with Solr and SparkTime Series Processing with Solr and Spark
Time Series Processing with Solr and Spark
Josef Adersberger
 
Spock and Geb in Action
Spock and Geb in ActionSpock and Geb in Action
Spock and Geb in Action
Christian Baranowski
 
The uniform interface is 42
The uniform interface is 42The uniform interface is 42
The uniform interface is 42
Yevhen Bobrov
 
Parallel Computing with R
Parallel Computing with RParallel Computing with R
Parallel Computing with R
Peter Solymos
 
JPoint 2016 - Валеев Тагир - Странности Stream API
JPoint 2016 - Валеев Тагир - Странности Stream APIJPoint 2016 - Валеев Тагир - Странности Stream API
JPoint 2016 - Валеев Тагир - Странности Stream API
tvaleev
 
Undoing Event-driven Adaptation of Business Processes
Undoing Event-driven Adaptation of Business ProcessesUndoing Event-driven Adaptation of Business Processes
Undoing Event-driven Adaptation of Business Processes
Sébastien Mosser
 

What's hot (10)

CQS
CQSCQS
CQS
 
RAPIDS: ускоряем Pandas и scikit-learn на GPU Павел Клеменков, NVidia
RAPIDS: ускоряем Pandas и scikit-learn на GPU  Павел Клеменков, NVidiaRAPIDS: ускоряем Pandas и scikit-learn на GPU  Павел Клеменков, NVidia
RAPIDS: ускоряем Pandas и scikit-learn на GPU Павел Клеменков, NVidia
 
Cqs v2
Cqs v2Cqs v2
Cqs v2
 
Vertica trace
Vertica traceVertica trace
Vertica trace
 
Time Series Processing with Solr and Spark
Time Series Processing with Solr and SparkTime Series Processing with Solr and Spark
Time Series Processing with Solr and Spark
 
Spock and Geb in Action
Spock and Geb in ActionSpock and Geb in Action
Spock and Geb in Action
 
The uniform interface is 42
The uniform interface is 42The uniform interface is 42
The uniform interface is 42
 
Parallel Computing with R
Parallel Computing with RParallel Computing with R
Parallel Computing with R
 
JPoint 2016 - Валеев Тагир - Странности Stream API
JPoint 2016 - Валеев Тагир - Странности Stream APIJPoint 2016 - Валеев Тагир - Странности Stream API
JPoint 2016 - Валеев Тагир - Странности Stream API
 
Undoing Event-driven Adaptation of Business Processes
Undoing Event-driven Adaptation of Business ProcessesUndoing Event-driven Adaptation of Business Processes
Undoing Event-driven Adaptation of Business Processes
 

Similar to Resilence patternsreloaded kr

Resilence patterns kr
Resilence patterns krResilence patterns kr
Resilence patterns kr
Jisung Ahn
 
Fault tolerance made easy
Fault tolerance made easyFault tolerance made easy
Fault tolerance made easy
Uwe Friedrichsen
 
Azure Durable Funkiness - .NET Oxford June 2018
Azure Durable Funkiness - .NET Oxford June 2018Azure Durable Funkiness - .NET Oxford June 2018
Azure Durable Funkiness - .NET Oxford June 2018
Stuart Leeks
 
Openstack taskflow 簡介
Openstack taskflow 簡介Openstack taskflow 簡介
Openstack taskflow 簡介
kao kuo-tung
 
Php unit the-mostunknownparts
Php unit the-mostunknownpartsPhp unit the-mostunknownparts
Php unit the-mostunknownparts
Bastian Feder
 
Immutable infrastructure - Beyond stateless
Immutable infrastructure - Beyond statelessImmutable infrastructure - Beyond stateless
Immutable infrastructure - Beyond stateless
Jorge Dias
 
The Ring programming language version 1.10 book - Part 94 of 212
The Ring programming language version 1.10 book - Part 94 of 212The Ring programming language version 1.10 book - Part 94 of 212
The Ring programming language version 1.10 book - Part 94 of 212
Mahmoud Samir Fayed
 
Async and Non-blocking IO w/ JRuby
Async and Non-blocking IO w/ JRubyAsync and Non-blocking IO w/ JRuby
Async and Non-blocking IO w/ JRuby
Joe Kutner
 
PhpUnit - The most unknown Parts
PhpUnit - The most unknown PartsPhpUnit - The most unknown Parts
PhpUnit - The most unknown Parts
Bastian Feder
 
Reactive programming on Android
Reactive programming on AndroidReactive programming on Android
Reactive programming on Android
Tomáš Kypta
 
Modern day jvm controversies
Modern day jvm controversiesModern day jvm controversies
Modern day jvm controversies
VictorSzoltysek
 
Reacting with ReactiveUI
Reacting with ReactiveUIReacting with ReactiveUI
Reacting with ReactiveUI
kiahiska
 
Java 7 new features
Java 7 new featuresJava 7 new features
Java 7 new features
Aliaksandr Kazlou
 
Google App Engine Developer - Day3
Google App Engine Developer - Day3Google App Engine Developer - Day3
Google App Engine Developer - Day3
Simon Su
 
Premature optimisation workshop
Premature optimisation workshopPremature optimisation workshop
Premature optimisation workshop
Arjan van Leeuwen
 
Distributed load testing with k6
Distributed load testing with k6Distributed load testing with k6
Distributed load testing with k6
Thijs Feryn
 
Clojure functions midje
Clojure functions midjeClojure functions midje
Clojure functions midje
Jackson dos Santos Olveira
 
Performance tests - it's a trap
Performance tests - it's a trapPerformance tests - it's a trap
Performance tests - it's a trap
Andrzej Ludwikowski
 
Vert.x - Reactive & Distributed [Devoxx version]
Vert.x - Reactive & Distributed [Devoxx version]Vert.x - Reactive & Distributed [Devoxx version]
Vert.x - Reactive & Distributed [Devoxx version]
Orkhan Gasimov
 
Guava Overview. Part 1 @ Bucharest JUG #1
Guava Overview. Part 1 @ Bucharest JUG #1 Guava Overview. Part 1 @ Bucharest JUG #1
Guava Overview. Part 1 @ Bucharest JUG #1
Andrei Savu
 

Similar to Resilence patternsreloaded kr (20)

Resilence patterns kr
Resilence patterns krResilence patterns kr
Resilence patterns kr
 
Fault tolerance made easy
Fault tolerance made easyFault tolerance made easy
Fault tolerance made easy
 
Azure Durable Funkiness - .NET Oxford June 2018
Azure Durable Funkiness - .NET Oxford June 2018Azure Durable Funkiness - .NET Oxford June 2018
Azure Durable Funkiness - .NET Oxford June 2018
 
Openstack taskflow 簡介
Openstack taskflow 簡介Openstack taskflow 簡介
Openstack taskflow 簡介
 
Php unit the-mostunknownparts
Php unit the-mostunknownpartsPhp unit the-mostunknownparts
Php unit the-mostunknownparts
 
Immutable infrastructure - Beyond stateless
Immutable infrastructure - Beyond statelessImmutable infrastructure - Beyond stateless
Immutable infrastructure - Beyond stateless
 
The Ring programming language version 1.10 book - Part 94 of 212
The Ring programming language version 1.10 book - Part 94 of 212The Ring programming language version 1.10 book - Part 94 of 212
The Ring programming language version 1.10 book - Part 94 of 212
 
Async and Non-blocking IO w/ JRuby
Async and Non-blocking IO w/ JRubyAsync and Non-blocking IO w/ JRuby
Async and Non-blocking IO w/ JRuby
 
PhpUnit - The most unknown Parts
PhpUnit - The most unknown PartsPhpUnit - The most unknown Parts
PhpUnit - The most unknown Parts
 
Reactive programming on Android
Reactive programming on AndroidReactive programming on Android
Reactive programming on Android
 
Modern day jvm controversies
Modern day jvm controversiesModern day jvm controversies
Modern day jvm controversies
 
Reacting with ReactiveUI
Reacting with ReactiveUIReacting with ReactiveUI
Reacting with ReactiveUI
 
Java 7 new features
Java 7 new featuresJava 7 new features
Java 7 new features
 
Google App Engine Developer - Day3
Google App Engine Developer - Day3Google App Engine Developer - Day3
Google App Engine Developer - Day3
 
Premature optimisation workshop
Premature optimisation workshopPremature optimisation workshop
Premature optimisation workshop
 
Distributed load testing with k6
Distributed load testing with k6Distributed load testing with k6
Distributed load testing with k6
 
Clojure functions midje
Clojure functions midjeClojure functions midje
Clojure functions midje
 
Performance tests - it's a trap
Performance tests - it's a trapPerformance tests - it's a trap
Performance tests - it's a trap
 
Vert.x - Reactive & Distributed [Devoxx version]
Vert.x - Reactive & Distributed [Devoxx version]Vert.x - Reactive & Distributed [Devoxx version]
Vert.x - Reactive & Distributed [Devoxx version]
 
Guava Overview. Part 1 @ Bucharest JUG #1
Guava Overview. Part 1 @ Bucharest JUG #1 Guava Overview. Part 1 @ Bucharest JUG #1
Guava Overview. Part 1 @ Bucharest JUG #1
 

Recently uploaded

Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdfBaha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
Baha Majid
 
Folding Cheat Sheet #5 - fifth in a series
Folding Cheat Sheet #5 - fifth in a seriesFolding Cheat Sheet #5 - fifth in a series
Folding Cheat Sheet #5 - fifth in a series
Philip Schwarz
 
Enhanced Screen Flows UI/UX using SLDS with Tom Kitt
Enhanced Screen Flows UI/UX using SLDS with Tom KittEnhanced Screen Flows UI/UX using SLDS with Tom Kitt
Enhanced Screen Flows UI/UX using SLDS with Tom Kitt
Peter Caitens
 
Best Practices & Tips for a Successful Odoo ERP Implementation
Best Practices & Tips for a Successful Odoo ERP ImplementationBest Practices & Tips for a Successful Odoo ERP Implementation
Best Practices & Tips for a Successful Odoo ERP Implementation
Envertis Software Solutions
 
Trailhead Talks_ Journey of an All-Star Ranger .pptx
Trailhead Talks_ Journey of an All-Star Ranger .pptxTrailhead Talks_ Journey of an All-Star Ranger .pptx
Trailhead Talks_ Journey of an All-Star Ranger .pptx
ImtiazBinMohiuddin
 
Alluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio Webinar | 10x Faster Trino Queries on Your Data PlatformAlluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio, Inc.
 
Software Test Automation - A Comprehensive Guide on Automated Testing.pdf
Software Test Automation - A Comprehensive Guide on Automated Testing.pdfSoftware Test Automation - A Comprehensive Guide on Automated Testing.pdf
Software Test Automation - A Comprehensive Guide on Automated Testing.pdf
kalichargn70th171
 
Building API data products on top of your real-time data infrastructure
Building API data products on top of your real-time data infrastructureBuilding API data products on top of your real-time data infrastructure
Building API data products on top of your real-time data infrastructure
confluent
 
How GenAI Can Improve Supplier Performance Management.pdf
How GenAI Can Improve Supplier Performance Management.pdfHow GenAI Can Improve Supplier Performance Management.pdf
How GenAI Can Improve Supplier Performance Management.pdf
Zycus
 
TheFutureIsDynamic-BoxLang-CFCamp2024.pdf
TheFutureIsDynamic-BoxLang-CFCamp2024.pdfTheFutureIsDynamic-BoxLang-CFCamp2024.pdf
TheFutureIsDynamic-BoxLang-CFCamp2024.pdf
Ortus Solutions, Corp
 
Hyperledger Besu 빨리 따라하기 (Private Networks)
Hyperledger Besu 빨리 따라하기 (Private Networks)Hyperledger Besu 빨리 따라하기 (Private Networks)
Hyperledger Besu 빨리 따라하기 (Private Networks)
wonyong hwang
 
Photoshop Tutorial for Beginners (2024 Edition)
Photoshop Tutorial for Beginners (2024 Edition)Photoshop Tutorial for Beginners (2024 Edition)
Photoshop Tutorial for Beginners (2024 Edition)
alowpalsadig
 
The Comprehensive Guide to Validating Audio-Visual Performances.pdf
The Comprehensive Guide to Validating Audio-Visual Performances.pdfThe Comprehensive Guide to Validating Audio-Visual Performances.pdf
The Comprehensive Guide to Validating Audio-Visual Performances.pdf
kalichargn70th171
 
Call Girls Bangalore🔥7023059433🔥Best Profile Escorts in Bangalore Available 24/7
Call Girls Bangalore🔥7023059433🔥Best Profile Escorts in Bangalore Available 24/7Call Girls Bangalore🔥7023059433🔥Best Profile Escorts in Bangalore Available 24/7
Call Girls Bangalore🔥7023059433🔥Best Profile Escorts in Bangalore Available 24/7
manji sharman06
 
Orca: Nocode Graphical Editor for Container Orchestration
Orca: Nocode Graphical Editor for Container OrchestrationOrca: Nocode Graphical Editor for Container Orchestration
Orca: Nocode Graphical Editor for Container Orchestration
Pedro J. Molina
 
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
widenerjobeyrl638
 
Upturn India Technologies - Web development company in Nashik
Upturn India Technologies - Web development company in NashikUpturn India Technologies - Web development company in Nashik
Upturn India Technologies - Web development company in Nashik
Upturn India Technologies
 
ACE - Team 24 Wrapup event at ahmedabad.
ACE - Team 24 Wrapup event at ahmedabad.ACE - Team 24 Wrapup event at ahmedabad.
ACE - Team 24 Wrapup event at ahmedabad.
Maitrey Patel
 
一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理
一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理
一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理
kgyxske
 

Recently uploaded (20)

Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdfBaha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
Baha Majid WCA4Z IBM Z Customer Council Boston June 2024.pdf
 
Folding Cheat Sheet #5 - fifth in a series
Folding Cheat Sheet #5 - fifth in a seriesFolding Cheat Sheet #5 - fifth in a series
Folding Cheat Sheet #5 - fifth in a series
 
Enhanced Screen Flows UI/UX using SLDS with Tom Kitt
Enhanced Screen Flows UI/UX using SLDS with Tom KittEnhanced Screen Flows UI/UX using SLDS with Tom Kitt
Enhanced Screen Flows UI/UX using SLDS with Tom Kitt
 
Best Practices & Tips for a Successful Odoo ERP Implementation
Best Practices & Tips for a Successful Odoo ERP ImplementationBest Practices & Tips for a Successful Odoo ERP Implementation
Best Practices & Tips for a Successful Odoo ERP Implementation
 
Trailhead Talks_ Journey of an All-Star Ranger .pptx
Trailhead Talks_ Journey of an All-Star Ranger .pptxTrailhead Talks_ Journey of an All-Star Ranger .pptx
Trailhead Talks_ Journey of an All-Star Ranger .pptx
 
Alluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio Webinar | 10x Faster Trino Queries on Your Data PlatformAlluxio Webinar | 10x Faster Trino Queries on Your Data Platform
Alluxio Webinar | 10x Faster Trino Queries on Your Data Platform
 
Software Test Automation - A Comprehensive Guide on Automated Testing.pdf
Software Test Automation - A Comprehensive Guide on Automated Testing.pdfSoftware Test Automation - A Comprehensive Guide on Automated Testing.pdf
Software Test Automation - A Comprehensive Guide on Automated Testing.pdf
 
Building API data products on top of your real-time data infrastructure
Building API data products on top of your real-time data infrastructureBuilding API data products on top of your real-time data infrastructure
Building API data products on top of your real-time data infrastructure
 
How GenAI Can Improve Supplier Performance Management.pdf
How GenAI Can Improve Supplier Performance Management.pdfHow GenAI Can Improve Supplier Performance Management.pdf
How GenAI Can Improve Supplier Performance Management.pdf
 
TheFutureIsDynamic-BoxLang-CFCamp2024.pdf
TheFutureIsDynamic-BoxLang-CFCamp2024.pdfTheFutureIsDynamic-BoxLang-CFCamp2024.pdf
TheFutureIsDynamic-BoxLang-CFCamp2024.pdf
 
Hyperledger Besu 빨리 따라하기 (Private Networks)
Hyperledger Besu 빨리 따라하기 (Private Networks)Hyperledger Besu 빨리 따라하기 (Private Networks)
Hyperledger Besu 빨리 따라하기 (Private Networks)
 
Photoshop Tutorial for Beginners (2024 Edition)
Photoshop Tutorial for Beginners (2024 Edition)Photoshop Tutorial for Beginners (2024 Edition)
Photoshop Tutorial for Beginners (2024 Edition)
 
The Comprehensive Guide to Validating Audio-Visual Performances.pdf
The Comprehensive Guide to Validating Audio-Visual Performances.pdfThe Comprehensive Guide to Validating Audio-Visual Performances.pdf
The Comprehensive Guide to Validating Audio-Visual Performances.pdf
 
bgiolcb
bgiolcbbgiolcb
bgiolcb
 
Call Girls Bangalore🔥7023059433🔥Best Profile Escorts in Bangalore Available 24/7
Call Girls Bangalore🔥7023059433🔥Best Profile Escorts in Bangalore Available 24/7Call Girls Bangalore🔥7023059433🔥Best Profile Escorts in Bangalore Available 24/7
Call Girls Bangalore🔥7023059433🔥Best Profile Escorts in Bangalore Available 24/7
 
Orca: Nocode Graphical Editor for Container Orchestration
Orca: Nocode Graphical Editor for Container OrchestrationOrca: Nocode Graphical Editor for Container Orchestration
Orca: Nocode Graphical Editor for Container Orchestration
 
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
美洲杯赔率投注网【​网址​🎉3977·EE​🎉】
 
Upturn India Technologies - Web development company in Nashik
Upturn India Technologies - Web development company in NashikUpturn India Technologies - Web development company in Nashik
Upturn India Technologies - Web development company in Nashik
 
ACE - Team 24 Wrapup event at ahmedabad.
ACE - Team 24 Wrapup event at ahmedabad.ACE - Team 24 Wrapup event at ahmedabad.
ACE - Team 24 Wrapup event at ahmedabad.
 
一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理
一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理
一比一原版(sdsu毕业证书)圣地亚哥州立大学毕业证如何办理
 

Resilence patternsreloaded kr