
Caching, Queuing, and Scalability Strategies in Application Performance
Discover the importance of queuing, caching, and scalability in enhancing application performance. Learn about handling traffic bursts, database bottlenecks, and considerations for effective caching. Get insights on testing methodologies and operational recommendations for optimal system functionality.
Download Presentation

Please find below an Image/Link to download the presentation.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.
You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.
E N D
Presentation Transcript
Queuing and Caching to Scalability James Kovacs JamesKovacs.com jkovacs@post.harvard.edu
Performance Application A 40 Requests per second Application B 20 Requests per second
Scalability 45 40 35 30 25 Application A Application B 20 15 10 5 0 1 user 10 users 100 users 1000 users
Is 20 Requests per Second Enough? 20 requests per second Is 1,200 requests per minute Is 72,000 requests per hour Is 1,728,000 requests per day Is 1.7 Million Requests per Day Enough? (per web server)
Scaling Where is your bottleneck? Disk Network CPU Memory Where in your stack? Web server App server Database Scale-up or Scale-out?
Database Bottleneck Bigger database server Partitioning (aka Sharding) Caching Webserver App server Cache server
Considerations for Caching Classic memory-performance trade-off Frequently used data High read, low write Avoid user-specific data Data staleness
Queuing Asynchronous call patterns affect architecture Increased availability Handle online/offline scenarios Smooth out traffic bursts and spikes
Recommendations Test early... so you know it works Test often... so you know it continues to work Use production-class infrastructure... so you know it works in production Use production data volumes and loads... so you know it works in the real world Spike your architecture... so you can change it if it doesn t work Implement monitoring... so you can plan your scale up
Questions James Kovacs JamesKovacs.com jkovacs@post.harvard.edu