Building and maintaining internet scale applications with Windows Azure Web Sites
description
Transcript of Building and maintaining internet scale applications with Windows Azure Web Sites
![Page 1: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/1.jpg)
![Page 2: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/2.jpg)
![Page 3: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/3.jpg)
Building and maintaining internet scale applications with Windows Azure Web SitesYochay KiriatySenior Program [email protected]@yochayk3-552
![Page 4: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/4.jpg)
One ‘marketing’ slideWhat does it take to run production sites?Development CycleMonitor & DiagnoseScale
Agenda
![Page 5: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/5.jpg)
Demoing Scale takes time
![Page 6: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/6.jpg)
![Page 7: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/7.jpg)
![Page 8: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/8.jpg)
Scale demos for today
Run the first two demos
I need a volunteer
Scale Type Scale demo Expectations Run @Scale Up Start with a Small Reserved Medium
LargeLinear or close to linear scale
HK
Scale Out 3 Medium Reserved Linear or close to linear scale
East US
Scale Out Start with a Small Reserved 3 Small Linear or close to linear scale
West US
Scale out Manage state in DB Linear or close to linear scale
HK
![Page 9: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/9.jpg)
Windows Azure Web SitesPaaS for the Modern Web
ScalableScale out or up in seconds on a Load Balanced, Always up to date, Global Infrastructure
Ready for BusinessEnterprise Grade Availability with support for SSL and AD
Web hosting your way with choice of language, framework, database, and platform
Flexible
A powerful self service platform for developers
![Page 10: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/10.jpg)
Build itYour favorite language, framework and tools 3rd party componentsTest itFunctional, perf and stressMultiple environment and as close to production as possible Deploy itProduction configuration and secrets Source control integrationMaintain itMonitor, diagnose, and debug
"Anything that can go wrong, will go wrong“
Murphy's law
What does it takes to run a production site?
![Page 11: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/11.jpg)
Many SC optionsPush from cloudCustom deployment scripts
Continues Integration
![Page 12: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/12.jpg)
Demo
Stage / PROD + custom deployment
![Page 13: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/13.jpg)
Go see Cory’s session Continues Integration with Windows Azure Web Sites
tomorrow @ 9:00 (North Hall:131)
![Page 14: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/14.jpg)
Monitoring and DiagnosticsPerformance statisticsCPU Time, # of requests, HTTP status 2xx, 4xx, 5xx, Network, Storage sizeDiagnostics HTTP logs, Filed Request Tracing, Detailed Errors Availabilty with endpoint monitoring ‘Dev Ops’ (bunch of diagnostics tools)Application tracing & log streaming Memory DumpsDiagnostics console New Relic
![Page 15: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/15.jpg)
Demo
Diagnostics Console Application tracing
![Page 16: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/16.jpg)
scalability is the ability of a system (a web site), network, or process to handle a growing amount of work (http traffic) in a capable manner (doesn’t go belly up) or its ability to be enlarged to accommodate that growth
Source: http://en.wikipedia.org/wiki/Scalability
![Page 17: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/17.jpg)
Web Sites Scale = HTTP Throughput
![Page 18: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/18.jpg)
Scaling Options: One or BothScale Up
In Standard tier - increase the size of a reserved instance
Scale Out
In Shared tier - add more instances of your app
In Standard tier – add more reserved instances (VMs)
![Page 19: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/19.jpg)
Scale demos for todayScale Type Scale demo Expectations Run @Scale Up Start with a Small Reserved Medium
LargeLinear or close to linear scale
HK
Scale Out 3 Medium Reserved Linear or close to linear scale
East US
Scale Out Start with a Small Reserved 3 Small Linear or close to linear scale
West US
Scale out Manage state in DB Linear or close to linear scale
HK
Show result of the first two demos
![Page 20: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/20.jpg)
32 bit Vs. 64 bitFor .NET application a gain of ~20% to ~30%Make sure all dependencies support 64 bitNo 64 bit supportphp, Python, node.js
![Page 21: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/21.jpg)
Scale demos for todayScale Type Scale demo Expectations Run @Scale Up Start with a Small Reserved Medium
LargeLinear or close to linear scale
HK
Scale Out 3 Medium Reserved Linear or close to linear scale
East US
Scale Out Start with a Small Reserved 3 Small Linear or close to linear scale
West US
Scale out Manage state in DB Linear or close to linear scale
HK
Start next two demos
Again – a volunteer is required
![Page 22: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/22.jpg)
Cloud First by Design
SQL based configurationDynamic provisioning of sites on demandNetwork Storage (Azure xDrive, SMB, NAS, SAN)Stateless web servers (no synchronization required)Intelligent load balancing
How Does It Work?
![Page 23: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/23.jpg)
MICROSOFT CONF IDENTIAL – INTERNAL ONLY
HTTPSite DB
Site DB
Site DBWebWorke
rWebWorke
rWebWorke
r
Azure LB
Frontend(IIS ARR)
Runtime DB
SQL Azure VHD blobs
Site DB
SQL Azure / MySQL / Mongo
API endpoint
Publish endpoint File Server
WebWorkerSite DB
Site DB
Serving HTTP(s) Traffic – Inactive Site (‘cold’ site)http://site1..../
![Page 24: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/24.jpg)
MICROSOFT CONF IDENTIAL – INTERNAL ONLY
HTTP
Azure LB
Frontend(IIS ARR)
Runtime DB
SQL Azure VHD blobs
SQL Azure
API endpoint
Publish endpoint File Server
Site DB
Serving HTTP(s) Traffic – Inactive Site (‘cold’ site)http://site1..../ WebWorke
rsite1site1
![Page 25: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/25.jpg)
MICROSOFT CONF IDENTIAL – INTERNAL ONLY
HTTPSite DB
Site DB
Site DBWebWorke
rWebWorke
rWebWorke
r
Azure LB Runtime
DBMetering
DBSQL Azure VHD blobs
Site DB
SQL Azure
API endpoint
Publish endpoint File Server
Site DB
Site DB
Serving HTTP(s) Traffic – Active Site (‘hot’ site)http://site1..../
site1
WebWorkerFrontend(IIS ARR)
![Page 26: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/26.jpg)
Scale Out – Things To RememberIs your app stateful? Meet ARR Affinity cookieStateless app running on WAWSSay goodbye to ARR Affinity cookieManage session state (DB, Cache, Azure Storage, Client Cookies, etc…)Manage load across all components Database (SQL-Az, MySQL, Mongo, etc…)Any other Azure or 3rd party component
![Page 27: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/27.jpg)
Deleting Cookiesfunction Delete_Cookie( name, path, domain ) { if ( Get_Cookie( name ) ) document.cookie=name+"="+((path) ? ";path="+path:"")+((domain)?";domain="+domain:"") +
";expires=Thu, 01 Jan 1970 00:00:01 GMT";}
![Page 28: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/28.jpg)
Scale demos for todayScale Type Scale demo Expectations Run @Scale Up Start with a Small Reserved Medium
LargeLinear or close to linear scale
HK
Scale Out 3 Medium Reserved Linear or close to linear scale
East US
Scale Out Start with a Small Reserved 3 Small Linear or close to linear scale
West US
Scale out Manage state in DB Linear or close to linear scale
HK
Show result of last two demos
![Page 29: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/29.jpg)
Optimizing cost
Scale-outScale-up (coming soon)
Auto - Scale
![Page 30: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/30.jpg)
Additional ‘Scale’ Considerations / Topics Cache‘in memory’ (like Memcached) / Distributed (‘velocity’) / As a service Geo – Distributed Traffic ManagerCDNSharding Database (‘manually’ or using DB such as mongo)Traffic (traffic manager) / Advance Load Balancing Any other application related sharding logic
![Page 31: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/31.jpg)
Customer adoption for numbersOver 90K Subscriptions Since June’12
![Page 32: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/32.jpg)
![Page 33: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/33.jpg)
Don’t Try This @ Homehttps://github.com/yochay/waws-sudokutesthttps://github.com/yochay/waws-Leaderboard
http://www.iis.net/downloads/community/2007/05/wcat-63-(x86)
http://blogs.msdn.com/b/windowsazure/ https://twitter.com/yochayk
If you don’t believe me. Try it for yourself
![Page 34: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/34.jpg)
Why Using Windows Azure Web Sites
Best Visual Studio Experience
Web scale world wide
Ready for business
Faster to market
Scalable, secure and flexible platform for building and hosting powerful web applications.
Open and flexible
![Page 35: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/35.jpg)
Additional Azure Web Sites SessionsSession Presenter Description Continuous integration and scripting with Windows Azure Web SitesNorth Hall: 131 June 28, 2013 from 9:00AM to 10:00AM
Cory FowlerLearn about development and deployment automation in WAWS.300 Level
Building and maintaining Internet scale applications with Windows Azure Web SitesNorth Hall: 123June 27, 2013 from 3:30PM to 4:30PM
Yochay Kiriaty Learn about performance and scaling with WAWS
Create connected business applications with Windows Azure WebsitesNorth Hall: 134June 27, 2013 from 5:00PM to 6:00PM
Brady Gaster Learn how to build connected business applications with WAWS
Introduction to Node.js on Windows AzureSouth Hall: East Mezzanine 222 June 27, 2013 from 5:00PM to 6:00PM
Tomasz Janczuk Learn about developing applications using node.js
Advanced Patterns using Windows Azure Web Sites for apps for Office and SharePointNorth Hall: 131June 28, 2013 from 10:30AM to 11:30AM
Brady GasterDonovan Follette
Learn how to integrate WAWS and Office 365
![Page 37: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/37.jpg)
Evaluate this session
Scan this QR code to evaluate this session and be automatically entered in a drawing to win a prize!
![Page 38: Building and maintaining internet scale applications with Windows Azure Web Sites](https://reader035.fdocuments.in/reader035/viewer/2022062316/56816859550346895dde8d31/html5/thumbnails/38.jpg)
© 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.