Building Scalable Web Applications with the All new Windows Azure Saranya Sriram │ Developer Evangelist, Microsoft
Virtual Tech DaysINDIA │ 22- 24 November 2010
Windows Azure – Roadmap
Using Cloud for Scale
Modeling Cloud Applications
Web and Worker Roles
Summary & Conclusion
S E S S I O N A G E N D AVirtual Tech Days
INDIA │ 22- 24 November 2010
Windows Azure – Roadmap
Virtual Tech DaysINDIA │ 22- 24 November 2010
4
Microsoft in the Cloud
Microsoft Online Services
Windows Azure
PlatformSystem Center
SaaS PaaS IaaS
What is Windows Azure Platform ?• The Windows Azure platform is an internet-scale cloud computing services
platform hosted in Microsoft data centers.
• Provides a range of functionality to build applications that span from consumer Web to enterprise scenarios.
• The Windows Azure platform includes:• Windows Azure• SQL Azure• Windows Azure AppFabric
Virtual Tech DaysINDIA │ 22- 24 November 2010
What is Windows Azure ?
• Windows Azure serves as the development, service hosting and service management environment for the Windows Azure platform.
• Provides developers with on-demand compute, storage and content delivery network capabilities to host, scale and manage Web applications on the Internet through Microsoft data centers.
• Windows Azure is now commercially available in 41 countries.
Virtual Tech DaysINDIA │ 22- 24 November 2010
Windows Azure –What’s New
October 2008
June 2010November
2009February
2010• Updated Windows Azure CTP• Enabled Full Trust, PHP, Java,
CDN CTP, and more• Announced VM Role, Project
Sydney, pricing and SLAs• Project “Dallas” CTP
Windows Azure Platform commercially available
• Announced the Windows Azure Platform
• First CTP of Windows Azure
Announced SQL Azure Relational Database
March 2009
• Windows Azure Update• .NET Framework 4• OS Versioning• CDN
• SQL Azure Update• 50GB databases• Spatial data support• DAC support
Virtual Tech DaysINDIA │ 22- 24 November 2010
Platform Enhancements
• Windows Azure Virtual Machine Role
• Role enhancements• Admin mode,
Startup tasks, • Full-IIS support• Extra Small Instances
Windows Azure Connect
• Access to on-premise resource for cross-premise apps
• Support for Domain-joining VMs
• Direct role-instance connectivity for easier development
• Use your existing remote administration tools
Improved Dev / IT Pro Experience
• New Windows Azure Platform Management Portal
• Multiple users & roles for management
• Remote Desktop• Enhanced Dev Tools• PHP Development• Marketplace
Windows Azure –What’s NewVirtual Tech Days
INDIA │ 22- 24 November 2010
Using Cloud for Scale
Virtual Tech DaysINDIA │ 22- 24 November 2010
UsageCom
pute
Time Average
InactivityPeriod
“On and Off”
Average UsageC
ompu
te
Time
“Growing Fast”
Business need: Periodic batch processExample scenario: Credit card company doing risk scoring for portfolio on a monthly basis
Evidence: RiskMetrics financial analysis and Monte Carlo simulations
Business need: To stay ahead of steady, but fast-growing customer demandExample scenario: Digital syndication
Evidence: Associated Press Breaking News API
Virtual Tech DaysINDIA │ 22- 24 November 2010
Business need: To respond to periodic peaks in customer usage and business cycleExample scenarios: E-commerce systems, internal payroll portals, and corporate Web sites
Com
pute
Time
“Unpredictable Bursting”
Average Usage
Com
pute
Time
Average Usage
“Predictable Bursting”
Business need: To safely handle highly unpredictable spikes in customer demand
Example scenarios: Marketing campaigns, event ticketing, retail fads, and disaster response/recovery
Virtual Tech DaysINDIA │ 22- 24 November 2010
Virtual Tech DaysINDIA │ 22- 24 November 2010
Modeling Cloud Applications
Virtual Tech DaysINDIA │ 22- 24 November 2010
Modeling Cloud ApplicationsA cloud application is typically made up of different components
– Front end: e.g. load-balanced stateless web servers– Middle worker tier: e.g. order processing, encoding– Backend storage: e.g. SQL tables or files– Multiple instances of each for scalability and availability
Front-End
Saranya’s Cloud Application
Front-End
Middle-TierMiddle-
TierMiddle-
Tier
HTTP/HTTPS WindowsAzure
Storage,SQL Azure
Load Balancer
Virtual Tech DaysINDIA │ 22- 24 November 2010
Modeling Cloud Applications
Front-End
Saranya’s Cloud Application
Front-End
Middle-TierMiddle-
TierMiddle-
Tier
HTTP/HTTPS WindowsAzure
Storage,SQL Azure
Load Balancer
Virtual Tech DaysINDIA │ 22- 24 November 2010
Role EnhancementsAdditional control and flexibility on the Windows Azure environment and simplified migration of existing Windows applications to Windows Azure.
• Windows Server 2008 R2 & IIS 7.5• Admin Access: Full administrative access to your role instances• Reboot/Re-image support: Ability to easily reboot or re-image your instances• Remote Desktop: Ability to use Remote Desktop with any Role type (Web, worker, VM)• Network Modeling
• Well Known Ports: Easier to bring your existing applications to Windows Azure• Port Ranges: for “inbound traffic” (as opposed to 5 in the past)• Load Balancer Control: Take instance on/off the load balancer for debugging purposes• Network Filters: Enable traffic filtering between roles within a service
• Improved AutomationStartup Tasks: Includes scripts that automate the preparation and configuration of roles Role Plugins: Ability to easily include “plug-ins” in the service definition(e.g., built-in: remote desktop, virtual network, diagnostics. More samples to come)
Virtual Tech DaysINDIA │ 22- 24 November 2010
Full IIS Support
• Leverage the ecosystem of IIS applications, programming languages tools, and components with the revamped Web role
• Multiple Web sites and applications• Improved iterative local development with the Development Fabric• Iterative cloud development with Web Deploy and IIS Manager• Host level configuration, including native modules• Enhanced by Windows Azure automated service management
Virtual Tech DaysINDIA │ 22- 24 November 2010
Web & Worker Roles
Virtual Tech DaysINDIA │ 22- 24 November 2010
Web Role
• Customized for Web application development• Driven by UI , User Interaction• May define a single http/https end points (Input endpoint) for communication
with external clients• Can communicate with other roles (Internal endpoint) with a single http
endpoint
Virtual Tech DaysINDIA │ 22- 24 November 2010
Worker Role
• For generalized development• Performs background processing• May define a any number http/https / TCP end points (Input endpoint) for
communication with external clients• Can communicate with other roles (Internal endpoint) with a any number of
http/TCP endpoint
Virtual Tech DaysINDIA │ 22- 24 November 2010
Demo :#1 – Web Role Vs. Worker Role Via Queues #2 – Worker Role via Input Endpoints#3 – Web Role Vs. Worker Role – Internal Communication
Virtual Tech DaysINDIA │ 22- 24 November 2010
• Windows Azure SDKs 1. Development Simulation of Fabric Controller2. Development Simulation of Storage Service3. DLLS
• Microsoft.WindowsAzure• Microsoft.WindowsAzure.Diagnostics• Microsoft.WindowsAzure.ServiceRuntime.dll• Microsoft.WindowsAzure.StorageClient.dll
Key PointsVirtual Tech Days
INDIA │ 22- 24 November 2010
• Windows Azure Tools for Visual Studio1. New template for Cloud Applications
• Web Role (asp.net, MVC, WCF service), Worker Role• C#, VB.net ,F#(For worker role)
2. Service Model governed by Roles & completely configurable3. Web & Worker roles tooling
• WebRole.cs & WorkerRole.cs• Diagonostic trace enabled• Appropriate References Added
4. Visual Studio integration of Build, debug & deploy to Cloud simulator5. Enhanced one click publish to the Cloud with certificates
Key pointsVirtual Tech Days
INDIA │ 22- 24 November 2010
6. Server Explorer has Windows Azure Compute & Storage tabsa. Compute can directly connect to the cloud on on-clickb. Storage can connect to dev-storage or cloudc. Storage can be filtered and manage huge amounts of data
7. Windows Azure activity loga. Compute analysesb. Storage analysisc. Trace
8. IntelliTrace enables historical debugging of Read cloud scenario on your desktop
Key PointsVirtual Tech Days
INDIA │ 22- 24 November 2010
– Using Configuration, Its easy to scale UP /Down in Azure– Understand how Web & Worker Roles Communicate with Each Other– Strategy on when to scale up and scale down in production– Real Time scaling is available
Key Take AwayVirtual Tech Days
INDIA │ 22- 24 November 2010
RESOURCES Windows Azure portal
http://www.windows.azure.com Tools, downloads, case studies, tutorials, getting started, One Stop Place
Professional Developer Conference PDC 09 http://www.microsoftpdc.com In detail session of each of Windows Azure platform component from developer, architect
and business perspective
Windows Azure Tools Team - Blog http://blogs.msdn.com/b/cloud/
Virtual Tech DaysINDIA │ 22- 24 November 2010
Please do give your Feedback, Complete evaluation at the end of this session. You could also write to be at :
[email protected] │ http://blogs.msdn.com/saranyas
Virtual Tech DaysINDIA │ 22- 24 November 2010
Appendix : Setting up Windows Azure Developer Environment
Virtual Tech DaysINDIA │ 22- 24 November 2010
• Visual Studio 2010 / Visual Studio 2008 • SQL Server 2008 / SQL Server 2008 R2• Windows Azure SDK & (Tools)Add-in for Visual Studio 2010 and
Visual Studio 2008- June 2010 release– Support building Cloud Services that use .NET 4 and .NET 3.5– Installable via the Web Platform Installer – http://microsoft.com/web – http://windowsazure.com
Free download - Works with (the free) Visual Web Developer Express 2010 & 2008 & SQL Server 2008 Express
Windows Azure ToolsVirtual Tech Days
INDIA │ 22- 24 November 2010