SlideShare a Scribd company logo
High Performance
Architecture Patterns
Celso Crivelaro
@celsocrivelaro
$ whoami > Celso Crivelaro
- Engineer and MSc in Computer Engineering
- Dev Ruby / Python / Java
@celsocrivelaro
http://crivelaro.me
High Performance Architecture Patterns
High Performance Architecture Patterns
SMTP Locaweb
- Transaction email platform
- Fast and high quality email sending
- Live reports
- Integration by SMTP Protocol and HTTP API
- 2,5 Millions of messages per day
- + 2 years
High Performance Architecture Patterns
Platforms
High Performance Architecture Patterns
High Performance Architecture Patterns
High Performance Architecture Patterns
High Performance Architecture Patterns
High Availability
Resource Consumption
High Performance Architecture Patterns
Disk
Memory
Band-
width
Processor
time
Logs
GC
Open
Connections
Deadlocks
Stop all disk activities
Swap
Slowness
Services stop
responding
Queues Amount
Workers
Slowness
Integrations
Integrations always
fails!
Integration Fails always
Internal
External
DB API Storage Network
API ISP HopCloud
Map hidden
integrations
E.g. DNS
Fail Fast
Failing Fast reduces
transient errors
Timeouts
Never trust in
default timeouts
Threads Timeouts to get rid of deadlocls
Internal Little timeout
External Depends: The least possible
Retry
1 2 3 5 8 n
Fibonacci Proportion
...
Isolate Critical
Components
Panel / API
Painel Web Internal API - HTTP
Resources
Connection
Pool
App Server
Business
Rules
Integrations
App Internal APIApp Panel
Painel Web API - HTTP
Resources
Conn.
Pool
App
Server
Business
Rules
Integrations
Resources
Conn.
Pool
App
Server
Business
Rules
Integrations
Less Components
==
Less Problems
High Performance Architecture Patterns
Redundancy
Health Check
High Performance Architecture Patterns
High Performance Architecture Patterns
Scalability
CAP Theorem
Availability
Consistency
Tolerance
to network
partition
Availability
Consistency
Partition
Tolerance
to network
partition
whether system is
available or not
Availability
Consistency
Tolerance
to network
partition
Same data in all nodes
Availability
Consistency
Tolerance
to network
partition
Tolerante when a network
fails
Availability
Consistency
Partition
Tolerance
Postgres
Availability
Consistency
Partition
Tolerance
DNS
Availability
Consistency
Partition
Tolerance
Protocols
Evaluate which one is
acceptable to your
platform
Pool of Resources
App
Connection
Resource
Connection
Connection
Connection
Connection
Controlled Timeouts
Controlled Resource Consumption
Avoid opening/closing connections
overhead
Cache
Make your data closer
to your app
When use cache
App API
DB
Default Cache Strategy
App
Cache
Source
1
2
3
Hot Cache Strategy
App Cache Source
2 1
Load Balacing
LB
App
App
App
App
Load Balance Strategy
matters!
Decoupled
Architecture
Slow Processing
Fast processing
Asynchronous Processing
Authentication
Message
Transformation
MTA ProvidersUser
Message
Persistence
Consolidation
Background jobs
Messaging frameworks
How to discover
bottlenecks?
Test your limits...
Load Test
Stress Test
Peak Test
Telemetry
High Performance Architecture Patterns
Grafana + InfluxDB
Other scalabity
patterns
Indexes
Sharding
References
High Performance Architecture Patterns
High Performance Architecture Patterns
High Performance Architecture Patterns
http://use-the-index-luke.com
High Performance Architecture Patterns
Thank you!
Celso Crivelaro
@celsocrivelaro
celsocrivelaro@gmail.com

More Related Content

PPT
Alpha Five v10.NEW APPLICATION SERVER. CODELESS AJAX
PPTX
Артем Оробец «На пути к low-latency»
PPTX
... No it's Apache Kafka!
PPTX
Ruby Daemons
PDF
HTTP2 in action - Piet Van Dongen - Codemotion Amsterdam 2017
PDF
Revisiting HTTP/2
PPTX
Java Performance Mistakes
PDF
A Customized Approach to HTTP Proxy Caching in Ruby
Alpha Five v10.NEW APPLICATION SERVER. CODELESS AJAX
Артем Оробец «На пути к low-latency»
... No it's Apache Kafka!
Ruby Daemons
HTTP2 in action - Piet Van Dongen - Codemotion Amsterdam 2017
Revisiting HTTP/2
Java Performance Mistakes
A Customized Approach to HTTP Proxy Caching in Ruby

What's hot (18)

PPTX
ChronoLogic Tools Demo: 6/12/18
PPTX
HTTP/2 Prioritization
PPTX
Extending the Yahoo Streaming Benchmark
PPTX
Deploy secure, scalable, and highly available web apps with Azure Front Door ...
ODP
Choosing a Web Architecture for Perl
PDF
Serverless architectures
PDF
Using Communication and Messaging API in the HTML5 World
PDF
Care and feeding notes
PDF
Mobile Api and Caching
PPTX
Measure() or die()
PDF
HTTP Request Smuggling via higher HTTP versions
PDF
Designing an API for Mobile
PPTX
Building Scalable .NET Web Applications
PPTX
Hugs instead of Bugs: Dreaming of Quality Tools for Devs and Testers
PDF
Getting a Grip on CDN Performance - Why and How
PDF
What's Inside Cloudflare Mobile SDK
PPTX
Resource loading, prioritization, HTTP/2 - oh my!
PPTX
Flink. Pure Streaming
ChronoLogic Tools Demo: 6/12/18
HTTP/2 Prioritization
Extending the Yahoo Streaming Benchmark
Deploy secure, scalable, and highly available web apps with Azure Front Door ...
Choosing a Web Architecture for Perl
Serverless architectures
Using Communication and Messaging API in the HTML5 World
Care and feeding notes
Mobile Api and Caching
Measure() or die()
HTTP Request Smuggling via higher HTTP versions
Designing an API for Mobile
Building Scalable .NET Web Applications
Hugs instead of Bugs: Dreaming of Quality Tools for Devs and Testers
Getting a Grip on CDN Performance - Why and How
What's Inside Cloudflare Mobile SDK
Resource loading, prioritization, HTTP/2 - oh my!
Flink. Pure Streaming
Ad

Similar to High Performance Architecture Patterns (20)

PDF
Software Architecture for Cloud Infrastructure
PDF
Reliability and Resilience Patterns
PPTX
Azure architecture design patterns - proven solutions to common challenges
PDF
Service Mesh Talk for CTO Forum
PDF
QConSF2016-JoshEvans-MasteringChaosANetflixGuidetoMicroservices-compressed.pdf
PDF
Software Architecture Anti-Patterns
PDF
Cloud application architecture with Microsoft Azure
PPTX
Mastering Chaos - A Netflix Guide to Microservices
PPTX
Architecting SaaS: Doing It Right the First Time
PDF
iSAQB gathering 2021 keynote - Architectural patterns for rapid, reliable, fr...
PDF
Architecting for Failures in micro services: patterns and lessons learned
PPTX
Service Mesh CTO Forum (Draft 3)
PDF
Melbourne Jan 2019 - Microservices adoption anti-patterns: Obstacles to decom...
PPTX
Serhiy Kalinets "Embracing architectural challenges in the modern .NET world"
PDF
Intro to Microservices
PPTX
Tech Talks Microservices
PDF
Devoxx2017
PPTX
Developer To Architect
PDF
Resilient Design 101 (JeeConf 2017)
PPTX
Alex Thissen (Xpirit) - Een verschuiving in architectuur: op weg naar microse...
Software Architecture for Cloud Infrastructure
Reliability and Resilience Patterns
Azure architecture design patterns - proven solutions to common challenges
Service Mesh Talk for CTO Forum
QConSF2016-JoshEvans-MasteringChaosANetflixGuidetoMicroservices-compressed.pdf
Software Architecture Anti-Patterns
Cloud application architecture with Microsoft Azure
Mastering Chaos - A Netflix Guide to Microservices
Architecting SaaS: Doing It Right the First Time
iSAQB gathering 2021 keynote - Architectural patterns for rapid, reliable, fr...
Architecting for Failures in micro services: patterns and lessons learned
Service Mesh CTO Forum (Draft 3)
Melbourne Jan 2019 - Microservices adoption anti-patterns: Obstacles to decom...
Serhiy Kalinets "Embracing architectural challenges in the modern .NET world"
Intro to Microservices
Tech Talks Microservices
Devoxx2017
Developer To Architect
Resilient Design 101 (JeeConf 2017)
Alex Thissen (Xpirit) - Een verschuiving in architectuur: op weg naar microse...
Ad

More from Celso Crivelaro (16)

PDF
Testing Network Conditions with ToxiProxy
PDF
Actor model in Ruby
PDF
Banco temporal Influxdb + Grafana: Operando sua Plataforma
PDF
Separando a regra de negócios do Rails
PDF
What devs should know about email
PPT
O que devs precisam saber sobre email
PDF
Escalando uma plataforma de e-mail transacional- aprendizado das trincheiras
PDF
High Performance Architecture Patterns
PPTX
Apresentação GOLD
PPTX
Treinamento apresentação
PPTX
WTA 2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recom...
PPTX
WTA2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recome...
PPTX
Primeiro step
PPTX
Formas decontratação
PPTX
Negociação
Testing Network Conditions with ToxiProxy
Actor model in Ruby
Banco temporal Influxdb + Grafana: Operando sua Plataforma
Separando a regra de negócios do Rails
What devs should know about email
O que devs precisam saber sobre email
Escalando uma plataforma de e-mail transacional- aprendizado das trincheiras
High Performance Architecture Patterns
Apresentação GOLD
Treinamento apresentação
WTA 2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recom...
WTA2012 - Proposta de Modelo Adaptativo para Geração de Contextos na Recome...
Primeiro step
Formas decontratação
Negociação

Recently uploaded (20)

PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PPTX
Spectroscopy.pptx food analysis technology
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
Cloud computing and distributed systems.
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Electronic commerce courselecture one. Pdf
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Diabetes mellitus diagnosis method based random forest with bat algorithm
20250228 LYD VKU AI Blended-Learning.pptx
MIND Revenue Release Quarter 2 2025 Press Release
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Spectroscopy.pptx food analysis technology
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Cloud computing and distributed systems.
“AI and Expert System Decision Support & Business Intelligence Systems”
Programs and apps: productivity, graphics, security and other tools
The Rise and Fall of 3GPP – Time for a Sabbatical?
Dropbox Q2 2025 Financial Results & Investor Presentation
sap open course for s4hana steps from ECC to s4
Encapsulation_ Review paper, used for researhc scholars
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Mobile App Security Testing_ A Comprehensive Guide.pdf
MYSQL Presentation for SQL database connectivity
Electronic commerce courselecture one. Pdf
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx

High Performance Architecture Patterns