architecting scalable applications in the cloud

Download Architecting Scalable Applications in the Cloud

Post on 09-May-2015




2 download

Embed Size (px)


There is an increasing importance to architect applications for both growth and optimal user experience. Modern development tools allow you to develop fantastic applications, but there are pitfalls with architecting the applications in the wrong way. This talk will discuss industry proven best practices for building highly scalable web sites and applications and how they might be implemented on Windows Azure.


  • 1.Lets get started

2. So you have a scalability problem?Congratulations! 3. Scalability Performance 4. Scalability is how your application behaves as the number of usersincreases 5. Performance is how your application behaves for each user 6. CPU UtilizationTransactions /second 7. Cost per Request Number of Requests 8. Load Stress 9. Load is how many simultaneous usersyour application can serve 10. Stress is how well your applicationbehaves when resources becomelimited 11. NetworkWhere are the Databasescalability limits? Web serverCode 12. Pattern: Nickel Defense 13. Pattern: Scale Up 14. PATTERN: Scale OutLoad Balancer 15. PATTERN: SpecializeWeb Application Web ServicesImage Server 16. PATTERN: Partition the database 1ReferenceTransaction 17. PATTERN: Partition the database 2Read CopyRead CopyWrite Copy 18. PATTERN: Partition the 19. Balance the computing load 20. Offload the work 21. WebWorker 22. NoSQL 23. Distribute globally 24. Cacheresponsibly 25. Plan for concurrency 26. Anti-patterns Blaming another department It works great on my machine! Attempting to maintain state Spending all your time looking at the code Caching everything (twice!) Services calling services especially across the network or networks 27. Question: Scale Later? 28. Azure: Core ServicesAzure Storage SQL Azure WebWeb Worker Worker Web(Queues)(DB)Worker(Compute) (Compute)(Compute) (Compute)(Compute) (Blobs) (Compute) (Tables) 29. Your Next Step


View more >