1 / 97

Developing Windows Azure applications

Developing Windows Azure applications. Alexandru Bogdan ȘTEFAN Microsoft Certified Trainer. Agenda. What is Windows Azure? Introduction in Windows Azure Windows Azure Services Windows Azure Free Trial Developing Azure Applications Hello World

king
Download Presentation

Developing Windows Azure applications

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Developing Windows Azureapplications Alexandru Bogdan ȘTEFAN Microsoft Certified Trainer

  2. Agenda What is Windows Azure? • Introduction in Windows Azure • Windows Azure Services • Windows Azure Free Trial Developing Azure Applications • Hello World • Application Deployment, Updates and Scaling Windows Azure Services • Compute • Storage • SQL Azure • Service Bus

  3. Windows Azure Services

  4. Windows Azure Core Services Database Compute Storage

  5. Windows Azure Compute Virtual Machines in the CloudThree Flavors: Web Role Worker Role VM Role

  6. Windows Azure Storage Scalable storage in the cloud 100tb per storage account Auto-scale to meet massive volume and throughput Accessible via REST services Access from Windows Azure Compute Access from anywhere via internet Supporting .NET Client Library Various storage types Table - group of entities (name/value pairs) Queue - Simple non-transactional message queue Blob - Large binary storage Drives - NTFS VHD mounted into Compute instance

  7. SQL Azure Database SQL Server relational database model delivered as a service Support for existing APIs & tools Built for the cloud with high availability & fault tolerance Easily provision and manage databases across multiple datacenters SQL Azure provides logical server Gateway server that understands TDS protocol Looks like SQL Server to TDS Client Actual data stored on multiple backend data nodes

  8. Building BlockServices Distributed, in-memory cache for Windows Azure apps Session state provider for Windows Azure applications .NET client library for caching data Caching Authn support using multiple identity providers Easily integrate Live ID, Facebook, Yahoo, Google, & AD Support for industry standards and existing .NET APIs Access Control Messaging & connectivity for building distributed and loosely-coupled apps in the cloud Enables hybrid apps across both on-premises & the cloud Queues & Topics for persistence & pub/sub messaging Service Bus

  9. Data Services SQL Server Reporting provided as a service Reports authored using existing tools (BIDS) Reports can include rich Data Visualizations (Maps, Charts, Tablix) and exported to variety of formats Directly viewed in the browser or rendered as part of an app using the Reporting Viewer control Web Service interface to render & manage reports Reporting Synchronize data from on-premises SQL Server to/from SQL Azure in the cloud Synchronize data between SQL Azure databases potentially in different data centers Data Sync

  10. Windows Azure Traffic Manager Designed to provide higher performance or availability of web applications and services Load balancing across multiple Hosted Services Available in CTP today Select from three modes: Directs the user to the best / closest deployment Redirect Traffic to another deployment based on availability Traffic is distributed equally to all hosted services Performance Fault Tolerance ROUND ROBIN

  11. Windows Azure CDN • Windows Azure • Customer Enables a better user experience & global reach Broad reach with 24+ locations globally 99.95% availability ECN NODE… ECN NODE 2 - TOKYO Container Windows Azure Storage Browse tocdn.customer.comGETfoo.jpg ECN NODE 1 - LONDON EDGE CACHING SERVERS

  12. Windows Azure Data Centers North America Region Europe Region Asia Pacific Region North Central US South Central US Northern Europe Western Europe East Asia South East Asia • 6 datacenters across 3 continents Simply select your data center of choice when deploying an application

  13. Windows Azure Trial

  14. Windows Azure 3 MonthsFree Trial Windows Azure SQL Azure • Elastic, scalable, secure, and highly available automated service platform • Highly available, scalable, and self managed distributed database service • Storage • Business Edition • Web Edition • Compute Per GB stored and transactions Per database/month Per service hour Per database/month NOT INCLUDED 20 GB storage 50k Storage transactions 750 hours Small Compute Instance 1GB Database Windows Azure Additional Services • Access Control • Caching • Service Bus Free through March 31, 2012 128MB cache Per Message Operation Per Message Operation Per Message Operation 100.000 transactions

  15. To enable the No ObligationFree Trial All new customers have a Spending Limit of $0 (USD) Spending Limit can be disabled, but cannot be re-enabled ! When the limits are reached, your subscription will be disabled until next billing month to avoid unnecesary charges. A Credit / Debit Card Mobile Phone for SMS Validation Windows Live ID

  16. Get started. http://WindowsAzure.com

  17. Hello Windows Azure demo

  18. What you saw… Simple ASP.NET MVC app Visual Studio 2010 Roles & instances are models in XML config Local F5 debugging Deployed to the cloud Simple portal experience Staging to production

  19. servicepackage servicepackage

  20.  Provision Virtual Servers  Deploy App Code  Configure Network servicepackage new virtual server new virtual server Server Rack 1 Server Rack 2

  21.  Provision Virtual Servers  Deploy App Code  Configure Network servicepackage Windows Azure Datacenter

  22.  Provision Virtual Servers  Deploy App Code  Configure Network servicepackage Windows Azure Datacenter

  23.  Provision Virtual Servers  Deploy App Code  Configure Network Network Load Balancer  Network load-balancer configured for traffic Windows Azure Datacenter

  24. Windows Azure provided… Environments for your apps Machines, rack space, switches, connectivity Automated deployment & configuration Isolation, redundancy, load balancing Abstraction & Flexibility

  25. Windows Azure Deployment Each hosted service can have two deployments: Production & Staging Deployments performed through: Windows Azure Platform Portal Visual Studio REST Service Management APIs PowerShell cmdlets/scripts Deployment outside of the portal requires management cert to be associated with the Windows Azure subscription

  26. Application Scaling

  27. Scale-up And Scale-out Volume Volume $10,000 machine $1000 machine $500 machine $500 machine $500 machine $500 machine $500 machine Scale Out Scale Up # Machines

  28. 2 6 92 Scale

  29. 92 Scale

  30. 10 Scale

  31. Network Load Balancer Windows Azure Datacenter

  32. Smooth Updates

  33. Developer Network Load Balancer Windows Azure Datacenter

  34. Developer Network Load Balancer Windows Azure Datacenter

  35. Developer Network Load Balancer Windows Azure Datacenter Staging Production

  36. Compute

  37. What is Windows Azure Compute? Virtual Machines in the CloudThree Flavors: Web Role Worker Role VM Role

  38. Role Types Worker Role Designed for web sites/services accessible using HTTP Provides all features of a worker role and IIS 7 or 7.5 Execute ASP.NET, WCF, PHP, etc. Can include multiple web sites in the same role Optionally implement RoleEntryPoint Web Role General purpose host for executing code or an executable Implement code in a Run method Similar to a Windows Service Host your own web server, encoder, etc. Typically used for background processing

  39. What Can It Run? • General Rule • If it runs in Windows it runs in Windows Azure • Choice of Language • C#, VB, C++, Java, PHP, Ruby, Node.js, Phython, etc. • Choice of Frameworks • .NET, ExpressJS, Rails, Zend, etc.

  40. Roles and Instances • Roles are defined in a Hosted Service • A role definition specifies: • VM size • Communication Endpoints • Local storage resources • etc. • At runtime each Role will execute on one or more instances • A role instance is a set of code, configuration, and local data, deployed in a dedicated VM

  41. Roles and InstancesExample Hosted Service configuration with a single web role and a single worker role Hosted Service Web Role Worker Role VM1 • VM2 • VM3 • VM4 VM1 • VM2 • VM3 • VM4 • VM5 • VM6 • VM7 • VM8 • VM5 • VMn • … • VM9 • VMn • …

  42. The High Scale Application Archetype Intelligent Network Load Balancer Network Activation Stateless Web and/or Application Servers Stateless ‘Worker’ Machines Async Activation State Tier Queues Key/ValueDatastores Partitioned RDBMS Shared Filesystem

  43. Storage

  44. Windows Azure Storage Storage in the Cloud Scalable, durable, and available Anywhere at anytime access Only pay for what the service uses Exposed via RESTful Web Services Use from Windows Azure Compute Use from anywhere on the internet

  45. Windows Azure Storage AccountUser specified globally unique account name Can choose geo-location to host storage account: US Europe Asia North Central US South Central US Northern Europe Western Europe East Asia South East Asia

  46. Windows Azure Storage Account Can CDN Enable Account Blobs delivered via 24 global CDN nodes Can co-locate storage account with compute account Explicitly or using affinity groups Accounts have two independent 512 bit shared secret keys 100 TBs per account

  47. Storage in the Development Fabric There are some differences between Cloud and DevStorage: http://msdn.microsoft.com/en-us/gg433135 A good approach for developers: To test pre-deployment, push storage to the cloud first Use Dev Fabric for compute connect to cloud hosted storageFinally, move compute to the cloud Provides a local “Mock” storage Emulates storage in cloud Allows offline development Requires SQL Express 2005/2008 or above

  48. Windows Azure Storage Abstractions Tables Structured storage. A table is a set of entities; an entity is a set of properties. Blobs Simple named files along with metadata for the file. Queues Reliable storage and delivery of messages for an application. Drives Durable NTFS volumes for Windows Azure applications to use. Based on Blobs.

  49. Blob Storage

  50. Blob Storage Concepts http://<account>.blob.core.windows.net/<container>/<blobname> Blob Pages/ Blocks • Account Container PIC01.JPG images Block/Page PIC02.JPG contoso Block/Page videos VID1.AVI

More Related