SlideShare a Scribd company logo
1 of 153
Download to read offline
How does your
application behave
when everything goes
wrong?
Emerson Macedo
@emerleite
Who am I?
Emerson Macedo
@emerleite
Software
Engineer
Who am I?
Software
Engineer
Almost
Languages
ALL
daddy of
two kids
Rio de Janeiro São Paulo&
#desapega
630K
BRAZILIANS
OLX
IS FOR
EVERYONE
Announce for the first
time every month
25%
OF ITEMS
SOLD
During first 24H
OLX Brazil – Biz Growth
3M+ Brazilians
announce every month
500K+ Ads	
inserted every day

63% of items sold
during first week

2M+ items sold		
per month – 50 per minute
"Anything that can go wrong
will go wrong"
Major Edward A. Murphy
2016
I’m an
aerospace
engineer
2016
I’m an
aerospace
engineer
Expectation x Reality
Expectation
Reality
https://www.rgoarchitects.com/Files/fallacies.pdf
Talking to
External services
Your
Application
External
Service
Happy path
• Body Level One
• Body Level Two
• Body Level Three
• Body Level Four
• Body Level Five
Your
Application
External
Service
Happy path
• Body Level One
• Body Level Two
• Body Level Three
• Body Level Four
• Body Level Five
Request
200 OK
Your
Application
External
Service
Happy path
• Body Level One
• Body Level Two
• Body Level Three
• Body Level Four
• Body Level Five
Request
200 OK
Success
Your
Application
External
Service
Unhappy path
Your
Application
External
Service
Request
5XX ERROR
Unhappy path
Your
Application
External
Service
Request
5XX ERROR
Fail
Unhappy path
Architectural
Patterns (stability)
Patterns and
antipatterns
for stability
Request Cache
Your
Application
Cache
External
Service
Request Cache
Your
Application
Cache
External
Service
Cache read (service URI) - NOT FOUND
Request Cache
Your
Application
Cache
External
Service
Request
Cache read (service URI) - NOT FOUND
Request Cache
Your
Application
Cache
External
Service
Request
200 OK
Cache read (service URI) - NOT FOUND
Request Cache
Your
Application
Cache
External
Service
Request
200 OK
Update cache (service URI) - SHORT TTL
Cache read (service URI) - NOT FOUND
Request Cache
Your
Application
Cache
External
Service
Request
200 OK
Update cache (service URI) - SHORT TTL
Cache read (service URI) - NOT FOUND
Request Cache
Success
Your
Application
Cache
External
Service
Request Cache
Your
Application
Cache
External
Service
Cache read (service URI) - FOUND
Request Cache
Your
Application
Cache
External
Service
Cache read (service URI) - FOUND
Request Cache
Success
Request	Timeout
Your
Application
External
Service
Request Timeout
Your
Application
External
Service
Request
TIMEOUT (ms)
Request Timeout
Your
Application
External
Service
Request
TIMEOUT (ms)
Fail Fast
Request Timeout
Request Retry
Your
Application
External
Service
Request Retry
Your
Application
External
Service
Request Retry
Request
TIMEOUT / ERROR
Your
Application
External
Service
Retry
Request Retry
Your
Application
External
ServiceRequest
200 OK
Retry
Request Retry
Your
Application
External
ServiceRequest
200 OK
Retry
Request Retry
Success
Your
Application
External
Service
Request Retry
Your
Application
External
Service
Request Retry
Request
TIMEOUT / ERROR
Your
Application
External
Service
Retry
Request	Retry
Your
Application
External
ServiceRequest
TIMEOUT / ERROR
Retry
Request	Retry
Your
Application
External
ServiceRequest
TIMEOUT / ERROR
Retry
Request	Retry
Fail
Circuit Breaker
Circuit Breaker
Circuit Breaker
https://martinfowler.com/bliki/CircuitBreaker.html
Your
Application
State
External
Service
Circuit Breaker
Your
Application
State
External
Service
Circuit Breaker
Circuit State - CLOSED
Your
Application
State
External
Service
Circuit Breaker
Request
200 OK
Circuit State - CLOSED
Your
Application
State
External
Service
Circuit Breaker
Request
200 OK
Circuit State - CLOSED
Success
Your
Application
State
External
Service
Circuit Breaker
Your
Application
State
External
Service
Circuit Breaker
Circuit State - CLOSED
Your
Application
State
External
Service
Circuit Breaker
Request
TIMEOUT / ERROR
Circuit State - CLOSED
Your
Application
State
External
Service
Circuit Breaker
Request
TIMEOUT / ERROR
Fail
Circuit State - CLOSED
Your
Application
State
External
Service
Circuit Breaker
Request
TIMEOUT / ERROR
Fail
Circuit State - CLOSED
Circuit State - OPEN
Your
Application
State
External
Service
Circuit	Breaker
Your
Application
State
External
Service
Circuit	Breaker
Circuit State - OPEN
Your
Application
State
External
Service
Circuit	Breaker
Fail
Circuit State - OPEN
Your
Application
State
External
Service
Circuit Breaker
Your
Application
State
External
Service
Circuit Breaker
Circuit State - HALF OPEN
Your
Application
State
External
Service
Circuit Breaker
Request
TIMEOUT / ERROR
Circuit State - HALF OPEN
Your
Application
State
External
Service
Circuit Breaker
Request
TIMEOUT / ERROR
Fail
Circuit State - HALF OPEN
Your
Application
State
External
Service
Circuit Breaker
Request
TIMEOUT / ERROR
Fail
Circuit State - HALF OPEN
Circuit State - OPEN
Your
Application
State
External
Service
Circuit Breaker
Your
Application
State
External
Service
Circuit Breaker
Circuit State - HALF OPEN
Your
Application
State
External
Service
Circuit Breaker
Request
200 OK
Circuit State - HALF OPEN
Your
Application
State
External
Service
Circuit Breaker
Request
200 OK
Success
Circuit State - HALF OPEN
Your
Application
State
External
Service
Circuit Breaker
Request
200 OK
Success
Circuit State - HALF OPEN
Circuit State - CLOSED
What about business
requirements?
Your system must
keep working
Patterns and
antipatterns
for stability
No matter the fallback
strategy, it can have an impact
on the business of the system
Nygard, Michael - Release It
Therefore, it’s essential to
involve the system’s stakeholders
when deciding how to handle
calls when the circuit is open
Nygard, Michael - Release It
Backup Battery
A backup battery provides power
to a system when the primary
source of power is unavailable 
Wikipedia
Your
Application
Battery
External
Service
Backup Battery
Your
Application
Battery
External
Service
Request
Backup Battery
Your
Application
Battery
External
Service
Request
200 OK
Backup Battery
Your
Application
Battery
External
Service
Request
200 OK
Backup Battery
Success
Your
Application
Battery
External
Service
Request
200 OK
Charge battery (service URI) - LONG TTL
Backup Battery
Success
Your
Application
Battery
External
Service
Backup Battery
Your
Application
Battery
External
Service
Request
Backup Battery
Your
Application
Battery
External
Service
Request
TIMEOUT / ERROR
Backup Battery
Your
Application
Battery
External
Service
Request
TIMEOUT / ERROR
Battery response (service URI) - FOUND
Backup Battery
Your
Application
Battery
External
Service
Request
TIMEOUT / ERROR
Battery response (service URI) - FOUND
Success
Backup Battery
Your
Application
Battery
External
Service
Backup	Ba4ery
Your
Application
Battery
External
Service
Request
Backup	Ba4ery
Your
Application
Battery
External
Service
Request
TIMEOUT / ERROR
Backup	Ba4ery
Your
Application
Battery
External
Service
Request
TIMEOUT / ERROR
Battery response (service URI) - NOT FOUND
Backup	Ba4ery
Your
Application
Battery
External
Service
Request
TIMEOUT / ERROR
Battery response (service URI) - NOT FOUND
Fail
Backup	Ba4ery
Your
Application
Battery
External
Service
Backup	Ba4ery
Your
Application
Battery
External
Service
Charger
Backup	Ba4ery
Your
Application
Battery
External
Service
Charger
Async
BATCH
Backup	Ba4ery
Your
Application
Battery
External
Service
Request
Charger
Async
BATCH
Backup	Ba4ery
Your
Application
Battery
External
Service
Request
TIMEOUT / ERROR
Charger
Async
BATCH
Backup	Ba4ery
Your
Application
Battery
External
Service
Request
TIMEOUT / ERROR
Battery response (service URI) - FOUND
Charger
Async
BATCH
Backup	Ba4ery
Your
Application
Battery
External
Service
Request
TIMEOUT / ERROR
Battery response (service URI) - FOUND
SuccessCharger
Async
BATCH
Backup	Ba4ery
Backup Battery
Backup Battery
vs
Request Cache
A request cache is a trusted
information stored and
reused to avoid external
service overload 
A backup battery provides power
to a system when the primary
source of power is unavailable 
Wikipedia
A request cache should
have a short time to
live (a.k.a TTL) 
A backup battery should
have a long time to live
(a.k.a TTL) 
Battery Backup Examples
Battery Backup Examples
Credit Card Limit Approval
Battery Backup Examples
Credit Card Limit Approval
Account Information
Battery Backup Examples
Credit Card Limit Approval
Account Information
Listing Offer
Battery Backup Examples
Credit Card Limit Approval
Account Information
Listing Offer
Video Playback Authorization
I’ve been doing this
Battery Backup as an
architectural stability
pattern for the last 5 years
Lessons Learned
1 - Measure
everything
Grafana or Similar
2 - Do not rely on
external services
3 - Be resilient
for everything
4 - Your users
are your target
5 - Be creative
and find solutions
That’s all folks
Emerson Macedo
@emerleite
https://blog.emerleite.com

More Related Content

Similar to TheConf 2018 - How does your app behave when everything goes wrong

Simulating APIs for Effective Testing: (Micro)Service Virtualisation for the ...
Simulating APIs for Effective Testing: (Micro)Service Virtualisation for the ...Simulating APIs for Effective Testing: (Micro)Service Virtualisation for the ...
Simulating APIs for Effective Testing: (Micro)Service Virtualisation for the ...Andrew Morgan
 
De jornais impressos a plataformas online de conteúdo (APIs)
De jornais impressos a plataformas online de conteúdo (APIs)De jornais impressos a plataformas online de conteúdo (APIs)
De jornais impressos a plataformas online de conteúdo (APIs)Pedro Valente
 
Api design best practices from a hacker's view
Api design best practices   from a hacker's viewApi design best practices   from a hacker's view
Api design best practices from a hacker's viewhe sicong
 
More than 1600 backlinks to Frontware.com
More than 1600 backlinks to Frontware.comMore than 1600 backlinks to Frontware.com
More than 1600 backlinks to Frontware.comFrontware International
 
The Future of APM and Why It Requires Analytics Everywhere!
The Future of APM and Why It Requires Analytics Everywhere!The Future of APM and Why It Requires Analytics Everywhere!
The Future of APM and Why It Requires Analytics Everywhere!New Relic
 
Web query expansion based on association rules mining with e hownet and googl...
Web query expansion based on association rules mining with e hownet and googl...Web query expansion based on association rules mining with e hownet and googl...
Web query expansion based on association rules mining with e hownet and googl...Paul Yang
 
geaazrhszegsr wrrathet eTETR Etrsfe deaFddaewe te3thr esesSEeee
geaazrhszegsr wrrathet eTETR Etrsfe deaFddaewe te3thr esesSEeeegeaazrhszegsr wrrathet eTETR Etrsfe deaFddaewe te3thr esesSEeee
geaazrhszegsr wrrathet eTETR Etrsfe deaFddaewe te3thr esesSEeeemariogultom6
 
Performance Testing Web 2.0 Applications—in an Agile World
Performance Testing Web 2.0 Applications—in an Agile WorldPerformance Testing Web 2.0 Applications—in an Agile World
Performance Testing Web 2.0 Applications—in an Agile WorldTechWell
 
Accelerating breakthrough business technologies in atlanta, tag featured spea...
Accelerating breakthrough business technologies in atlanta, tag featured spea...Accelerating breakthrough business technologies in atlanta, tag featured spea...
Accelerating breakthrough business technologies in atlanta, tag featured spea...Melanie Brandt
 
Designing Fault Tolerant APIs to keep Application Network Intact | MuleSoft M...
Designing Fault Tolerant APIs to keep Application Network Intact | MuleSoft M...Designing Fault Tolerant APIs to keep Application Network Intact | MuleSoft M...
Designing Fault Tolerant APIs to keep Application Network Intact | MuleSoft M...MysoreMuleSoftMeetup
 
Product Keynote: Jira Service Desk, Opsgenie, Statuspage
Product Keynote: Jira Service Desk, Opsgenie, StatuspageProduct Keynote: Jira Service Desk, Opsgenie, Statuspage
Product Keynote: Jira Service Desk, Opsgenie, StatuspageAtlassian
 
Crawling & Indexing: Technical SEO that drives revenue
Crawling & Indexing: Technical SEO that drives revenueCrawling & Indexing: Technical SEO that drives revenue
Crawling & Indexing: Technical SEO that drives revenueRobin Rozhon
 
Whirlpool GCL Prototype
Whirlpool GCL PrototypeWhirlpool GCL Prototype
Whirlpool GCL PrototypeKetan Patkar
 
GDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and ScaleGDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and ScalePatrick Chanezon
 

Similar to TheConf 2018 - How does your app behave when everything goes wrong (20)

Simulating APIs for Effective Testing: (Micro)Service Virtualisation for the ...
Simulating APIs for Effective Testing: (Micro)Service Virtualisation for the ...Simulating APIs for Effective Testing: (Micro)Service Virtualisation for the ...
Simulating APIs for Effective Testing: (Micro)Service Virtualisation for the ...
 
De jornais impressos a plataformas online de conteúdo (APIs)
De jornais impressos a plataformas online de conteúdo (APIs)De jornais impressos a plataformas online de conteúdo (APIs)
De jornais impressos a plataformas online de conteúdo (APIs)
 
Web API HTTP Pipeline
Web API HTTP PipelineWeb API HTTP Pipeline
Web API HTTP Pipeline
 
Api pain points
Api pain pointsApi pain points
Api pain points
 
Api design best practices from a hacker's view
Api design best practices   from a hacker's viewApi design best practices   from a hacker's view
Api design best practices from a hacker's view
 
VIRDI COMPANY PROFILE & PRODUCTS OVERVIEW
VIRDI COMPANY PROFILE & PRODUCTS OVERVIEWVIRDI COMPANY PROFILE & PRODUCTS OVERVIEW
VIRDI COMPANY PROFILE & PRODUCTS OVERVIEW
 
More than 1600 backlinks to Frontware.com
More than 1600 backlinks to Frontware.comMore than 1600 backlinks to Frontware.com
More than 1600 backlinks to Frontware.com
 
pub
pubpub
pub
 
pub
pubpub
pub
 
The Future of APM and Why It Requires Analytics Everywhere!
The Future of APM and Why It Requires Analytics Everywhere!The Future of APM and Why It Requires Analytics Everywhere!
The Future of APM and Why It Requires Analytics Everywhere!
 
Web query expansion based on association rules mining with e hownet and googl...
Web query expansion based on association rules mining with e hownet and googl...Web query expansion based on association rules mining with e hownet and googl...
Web query expansion based on association rules mining with e hownet and googl...
 
geaazrhszegsr wrrathet eTETR Etrsfe deaFddaewe te3thr esesSEeee
geaazrhszegsr wrrathet eTETR Etrsfe deaFddaewe te3thr esesSEeeegeaazrhszegsr wrrathet eTETR Etrsfe deaFddaewe te3thr esesSEeee
geaazrhszegsr wrrathet eTETR Etrsfe deaFddaewe te3thr esesSEeee
 
Performance Testing Web 2.0 Applications—in an Agile World
Performance Testing Web 2.0 Applications—in an Agile WorldPerformance Testing Web 2.0 Applications—in an Agile World
Performance Testing Web 2.0 Applications—in an Agile World
 
Accelerating breakthrough business technologies in atlanta, tag featured spea...
Accelerating breakthrough business technologies in atlanta, tag featured spea...Accelerating breakthrough business technologies in atlanta, tag featured spea...
Accelerating breakthrough business technologies in atlanta, tag featured spea...
 
Designing Fault Tolerant APIs to keep Application Network Intact | MuleSoft M...
Designing Fault Tolerant APIs to keep Application Network Intact | MuleSoft M...Designing Fault Tolerant APIs to keep Application Network Intact | MuleSoft M...
Designing Fault Tolerant APIs to keep Application Network Intact | MuleSoft M...
 
Product Keynote: Jira Service Desk, Opsgenie, Statuspage
Product Keynote: Jira Service Desk, Opsgenie, StatuspageProduct Keynote: Jira Service Desk, Opsgenie, Statuspage
Product Keynote: Jira Service Desk, Opsgenie, Statuspage
 
Crawling & Indexing: Technical SEO that drives revenue
Crawling & Indexing: Technical SEO that drives revenueCrawling & Indexing: Technical SEO that drives revenue
Crawling & Indexing: Technical SEO that drives revenue
 
Whirlpool GCL Prototype
Whirlpool GCL PrototypeWhirlpool GCL Prototype
Whirlpool GCL Prototype
 
GDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and ScaleGDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
GDD Japan 2009 - Designing OpenSocial Apps For Speed and Scale
 
ENG.ahmed shawky
ENG.ahmed shawkyENG.ahmed shawky
ENG.ahmed shawky
 

More from Emerson Macedo

ElixirConf 2019 - 10M Monthly Ad Insertions with Phoenix and Broadway
ElixirConf 2019 - 10M Monthly Ad Insertions with Phoenix and BroadwayElixirConf 2019 - 10M Monthly Ad Insertions with Phoenix and Broadway
ElixirConf 2019 - 10M Monthly Ad Insertions with Phoenix and BroadwayEmerson Macedo
 
The Conf 2019 - Elixir - Emerson Macedo
The Conf 2019 - Elixir - Emerson MacedoThe Conf 2019 - Elixir - Emerson Macedo
The Conf 2019 - Elixir - Emerson MacedoEmerson Macedo
 
Wanna be a manager? Not today - QCon São Paulo 2019
Wanna be a manager? Not today - QCon São Paulo 2019Wanna be a manager? Not today - QCon São Paulo 2019
Wanna be a manager? Not today - QCon São Paulo 2019Emerson Macedo
 
Beyond your daily coding - The Conf Brazil 2017 Keynote
Beyond your daily coding - The Conf Brazil 2017 KeynoteBeyond your daily coding - The Conf Brazil 2017 Keynote
Beyond your daily coding - The Conf Brazil 2017 KeynoteEmerson Macedo
 
CEJS 2016 - Please learn that shit
CEJS 2016 - Please learn that shitCEJS 2016 - Please learn that shit
CEJS 2016 - Please learn that shitEmerson Macedo
 
How Elixir helped us scale our Video User Profile Service for the Olympics
How Elixir helped us scale our Video User Profile Service for the OlympicsHow Elixir helped us scale our Video User Profile Service for the Olympics
How Elixir helped us scale our Video User Profile Service for the OlympicsEmerson Macedo
 
QCon SP 2016 - Video Authorization: from chaos to 25ms response time
QCon SP 2016 - Video Authorization: from chaos to 25ms response timeQCon SP 2016 - Video Authorization: from chaos to 25ms response time
QCon SP 2016 - Video Authorization: from chaos to 25ms response timeEmerson Macedo
 
Qcon Rio 2015 - Microservices
Qcon Rio 2015 - MicroservicesQcon Rio 2015 - Microservices
Qcon Rio 2015 - MicroservicesEmerson Macedo
 
Microservices Case: GloboTV e Globosat Play
Microservices Case: GloboTV e Globosat PlayMicroservices Case: GloboTV e Globosat Play
Microservices Case: GloboTV e Globosat PlayEmerson Macedo
 
Secomp 2011 - Node.JS - Introdução
Secomp 2011 - Node.JS - IntroduçãoSecomp 2011 - Node.JS - Introdução
Secomp 2011 - Node.JS - IntroduçãoEmerson Macedo
 
Jogos com NodeJS e Browser - QCON SP 2011
Jogos com NodeJS e Browser - QCON SP 2011Jogos com NodeJS e Browser - QCON SP 2011
Jogos com NodeJS e Browser - QCON SP 2011Emerson Macedo
 
Javascript Orientado a Objetos - Fisl12
Javascript Orientado a Objetos - Fisl12Javascript Orientado a Objetos - Fisl12
Javascript Orientado a Objetos - Fisl12Emerson Macedo
 
1 encontro Node.JS Brasil
1 encontro Node.JS Brasil1 encontro Node.JS Brasil
1 encontro Node.JS BrasilEmerson Macedo
 
BrazilJS - Node.JS Realtime Web Applications
BrazilJS - Node.JS Realtime Web ApplicationsBrazilJS - Node.JS Realtime Web Applications
BrazilJS - Node.JS Realtime Web ApplicationsEmerson Macedo
 
RubyMasters 2011 - Beyond Ruby with NodeJS
RubyMasters 2011 - Beyond Ruby with NodeJSRubyMasters 2011 - Beyond Ruby with NodeJS
RubyMasters 2011 - Beyond Ruby with NodeJSEmerson Macedo
 
Node.JS - Campus Party Brasil 2011
Node.JS - Campus Party Brasil 2011Node.JS - Campus Party Brasil 2011
Node.JS - Campus Party Brasil 2011Emerson Macedo
 
Beyond Ruby with NodeJS - RubyConf Brasil 2010
Beyond Ruby with NodeJS - RubyConf Brasil 2010Beyond Ruby with NodeJS - RubyConf Brasil 2010
Beyond Ruby with NodeJS - RubyConf Brasil 2010Emerson Macedo
 
DevInRio 2010 - NodeJS
DevInRio 2010 - NodeJSDevInRio 2010 - NodeJS
DevInRio 2010 - NodeJSEmerson Macedo
 
Nodejs - A performance que eu sempre quis ter
Nodejs - A performance que eu sempre quis terNodejs - A performance que eu sempre quis ter
Nodejs - A performance que eu sempre quis terEmerson Macedo
 

More from Emerson Macedo (19)

ElixirConf 2019 - 10M Monthly Ad Insertions with Phoenix and Broadway
ElixirConf 2019 - 10M Monthly Ad Insertions with Phoenix and BroadwayElixirConf 2019 - 10M Monthly Ad Insertions with Phoenix and Broadway
ElixirConf 2019 - 10M Monthly Ad Insertions with Phoenix and Broadway
 
The Conf 2019 - Elixir - Emerson Macedo
The Conf 2019 - Elixir - Emerson MacedoThe Conf 2019 - Elixir - Emerson Macedo
The Conf 2019 - Elixir - Emerson Macedo
 
Wanna be a manager? Not today - QCon São Paulo 2019
Wanna be a manager? Not today - QCon São Paulo 2019Wanna be a manager? Not today - QCon São Paulo 2019
Wanna be a manager? Not today - QCon São Paulo 2019
 
Beyond your daily coding - The Conf Brazil 2017 Keynote
Beyond your daily coding - The Conf Brazil 2017 KeynoteBeyond your daily coding - The Conf Brazil 2017 Keynote
Beyond your daily coding - The Conf Brazil 2017 Keynote
 
CEJS 2016 - Please learn that shit
CEJS 2016 - Please learn that shitCEJS 2016 - Please learn that shit
CEJS 2016 - Please learn that shit
 
How Elixir helped us scale our Video User Profile Service for the Olympics
How Elixir helped us scale our Video User Profile Service for the OlympicsHow Elixir helped us scale our Video User Profile Service for the Olympics
How Elixir helped us scale our Video User Profile Service for the Olympics
 
QCon SP 2016 - Video Authorization: from chaos to 25ms response time
QCon SP 2016 - Video Authorization: from chaos to 25ms response timeQCon SP 2016 - Video Authorization: from chaos to 25ms response time
QCon SP 2016 - Video Authorization: from chaos to 25ms response time
 
Qcon Rio 2015 - Microservices
Qcon Rio 2015 - MicroservicesQcon Rio 2015 - Microservices
Qcon Rio 2015 - Microservices
 
Microservices Case: GloboTV e Globosat Play
Microservices Case: GloboTV e Globosat PlayMicroservices Case: GloboTV e Globosat Play
Microservices Case: GloboTV e Globosat Play
 
Secomp 2011 - Node.JS - Introdução
Secomp 2011 - Node.JS - IntroduçãoSecomp 2011 - Node.JS - Introdução
Secomp 2011 - Node.JS - Introdução
 
Jogos com NodeJS e Browser - QCON SP 2011
Jogos com NodeJS e Browser - QCON SP 2011Jogos com NodeJS e Browser - QCON SP 2011
Jogos com NodeJS e Browser - QCON SP 2011
 
Javascript Orientado a Objetos - Fisl12
Javascript Orientado a Objetos - Fisl12Javascript Orientado a Objetos - Fisl12
Javascript Orientado a Objetos - Fisl12
 
1 encontro Node.JS Brasil
1 encontro Node.JS Brasil1 encontro Node.JS Brasil
1 encontro Node.JS Brasil
 
BrazilJS - Node.JS Realtime Web Applications
BrazilJS - Node.JS Realtime Web ApplicationsBrazilJS - Node.JS Realtime Web Applications
BrazilJS - Node.JS Realtime Web Applications
 
RubyMasters 2011 - Beyond Ruby with NodeJS
RubyMasters 2011 - Beyond Ruby with NodeJSRubyMasters 2011 - Beyond Ruby with NodeJS
RubyMasters 2011 - Beyond Ruby with NodeJS
 
Node.JS - Campus Party Brasil 2011
Node.JS - Campus Party Brasil 2011Node.JS - Campus Party Brasil 2011
Node.JS - Campus Party Brasil 2011
 
Beyond Ruby with NodeJS - RubyConf Brasil 2010
Beyond Ruby with NodeJS - RubyConf Brasil 2010Beyond Ruby with NodeJS - RubyConf Brasil 2010
Beyond Ruby with NodeJS - RubyConf Brasil 2010
 
DevInRio 2010 - NodeJS
DevInRio 2010 - NodeJSDevInRio 2010 - NodeJS
DevInRio 2010 - NodeJS
 
Nodejs - A performance que eu sempre quis ter
Nodejs - A performance que eu sempre quis terNodejs - A performance que eu sempre quis ter
Nodejs - A performance que eu sempre quis ter
 

Recently uploaded

TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKJago de Vreede
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 

Recently uploaded (20)

TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 

TheConf 2018 - How does your app behave when everything goes wrong