3. Who am I?
 Maarten Balliauw
 Antwerp, Belgium
 www.realdolmen.com
 Focus on web
 ASP.NET MVC, Windows Azure, SignalR, ...
 MVP Windows Azure & ASPInsider
 http://blog.maartenballiauw.be
 @maartenballiauw
 Author: Pro NuGet - http://amzn.to/pronuget
APRIL 17, 2012 | SLIDE 4
4. Agenda
 Quick recap: Windows Azure
 What’s different in the cloud?
 Rethinking apps
 Conclusion
APRIL 17, 2012 | SLIDE 5
5. Quick recap
Windows Azure
APRIL 17, 2012 | SLIDE 6
6. Windows Azure is a cloud platform
 On-demand
 Self-service
 Pay per use
 Highly automated
APRIL 17, 2012 | SLIDE 7
7. Windows Azure Components
Compute Storage SQL Azure Service Bus Connect
BI Marketplace CDN Caching ACS
Application Services Storage Services Foundation Services
APRIL 17, 2012 | SLIDE 8
9. Differences with your infrastructure
 Uniform
 Automated
 Designed for failure
 Designed for scale
 It’s not in your datacenter
APRIL 17, 2012 | SLIDE 10
10. Uniform
 Every machine +/- the same
 No specialized hardware
 No specialized OS*
APRIL 17, 2012 | SLIDE 11
11. Demo
Customizing the Windows Azure virtual machine
APRIL 17, 2012 | SLIDE 12
12. Automated
 Makes decisions on provisioning &
updating
 Monitors health
 The platform knows what’s best
 Not necessarily for your app…
APRIL 17, 2012 | SLIDE 13
20. Assume everything will fail
 Automated service maintenance
 Compute node crash
 Storage throttling
 SQL Azure throttling
 Connectivity
 Your code
APRIL 17, 2012 | SLIDE 21
21. 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/
APRIL 17, 2012 | SLIDE 22
22. The entire datacenter fails!
 Run in 2+ datacenters
 Keep data synchronized
 All data
 or limit scope
APRIL 17, 2012 | SLIDE 23
28. 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
APRIL 17, 2012 | SLIDE 29
36. SQL Azure
 Monitored by the platform
 The platform does not like high DB traffic
 Throttling & retries
APRIL 17, 2012 | SLIDE 37
37. Caching
 Most of our users are doing reads
 Cache content near where it’s needed
 Windows Azure Caching
 Blob Storage
APRIL 17, 2012 | SLIDE 38
42. 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
APRIL 17, 2012 | SLIDE 43
46. 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
APRIL 17, 2012 | SLIDE 47
48. http://blog.maartenballiauw.be
@maartenballiauw
http://amzn.to/pronuget
or Install-Package ProNuGet
THANK YOU!
APRIL 17, 2012 | SLIDE 49
Editor's Notes
Maarten
Kinepolis: veel static content / in-frame caching
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!