The promise of all cloud vendors out there is they can run your applications without changes. While that claim is true, it’s better to optimize existing software or design specifically for the cloud when moving or building an application. Architectural optimization will speed up your application, make it more scalable and even will make it cheaper to run on Windows Azure. This session will take you along some common patterns that are easy to implement and will make your cloud more sunny.
The promise of all cloud vendors out there is they can run your applications without changes. While that claim is true, it’s better to optimize existing software or design specifically for the cloud when moving or building an application. Architectural optimization will speed up your application, make it more scalable and even will make it cheaper to run on Windows Azure. This session will take you along some common patterns that are easy to implement and will make your cloud more sunny.
5. Windows Azure is a cloud platform
• On-demand
• Self-service
• Pay per use
• Highly automated
6. Windows Azure Components
Compute Storage SQL Azure Service Bus Connect
BI Marketplace CDN Caching ACS
Application Services Storage Services Foundation Services
19. Assume everything will fail
• Automated service maintenance
• Compute node crash
• Storage throttling
• SQL Azure throttling
• Connectivity
• Your code
20. Retry everything
SQL Azure Error 40501
The service is currently busy. Retry the
request after 10 seconds.
Retry against anything that might be external
SQL Azure, Windows Azure Storage, Service Bus, …
http://windowsazurecat.com/2011/02/transient-fault-
handling-framework/
21. The entire datacenter fails!
• Run in 2+ datacenters
• Keep data synchronized
– All data
– or limit scope
27. Solutions to a SPOF being down
• Set a monitoring endpoint for TM
• Take the entire datacenter out of the loop
• Take the SPOF out of the story
• Degrade gracefully
41. A typical web request…
• 1 request is dynamic
• 493 requests are static*
• Get that static content out of your servers!
– Cache content near where it’s needed
45. Key takeaways
• Cloud is different
• Design for failure
• Design for scale
• Work asynchronously
• Cache close to where it’s needed
• Also think price vs. Allowed outage
Show DemoUniformDemonstrate OS choice in ServiceConfiguration.Cloud.cscfg (osFamily2)Demonstrate run withstartup scriptDemonstratestartup scriptExplainxpath in ServiceDefinition.csdeftoretrieve Azure variables in the environment
Tell health is monitored, but more towards Azure. For example: throttling!