Windows Azure Tour

Post on 23-Feb-2016

20 views 0 download

Tags:

description

Windows Azure Tour. Benjamin Day Benjamin Day Consulting, Inc. http://www.benday.com http://blog.benday.com. About the speaker. Owner, Benjamin Day Consulting, Inc. Email: benday@benday.com Web: http://www.benday.com Blog: http://blog.benday.com Trainer - PowerPoint PPT Presentation

Transcript of Windows Azure Tour

Windows Azure TourBenjamin DayBenjamin Day Consulting, Inc.

http://www.benday.comhttp://blog.benday.com

About the speaker

• Owner, Benjamin Day Consulting, Inc.– Email: benday@benday.com– Web: http://www.benday.com– Blog: http://blog.benday.com

• Trainer– Visual Studio Team System, Team Foundation Server

• Microsoft MVP for VSTS• Microsoft VSTS/TFS Customer Advisory Council• Microsoft Cloud Services Advisory Group• Leader of Beantown.NET INETA User Group

Agenda• Big thanks to

– Steve Marx @ Microsoft– Manuvir Das @ Microsoft– David Aiken @ Microsoft

• What is Windows Azure?• Develop Your Application• Deploy To Staging and Production • Some Stuff To Think About

The Azure Platform

The Azure Platform

The “cloud” in Cloud Services?• Think data-center somewhere on the internet• Allows you to run your app• Allows you to read and write data

Ok. So what’s Windows Azure?• Microsoft’s “cloud”

– Every cloud has an Azure lining?• Custom version of Windows

– Optimized for utility computing applications– Always runs virtualized on the Azure Fabric

• Azure Fabric– Runs instances of your apps– Handles “everything”

• Azure Storage• Azure SDK for Visual Studio

Why Azure? • “I’ve got my awesome data-center so…”• No more worrying about…

– Buying, configuring, maintaining hardware– Buying, configuring, maintaining the operating system – Network infrastructure

• Routers, Switches, Load Balancers– Your data-center’s power and internet connections– Failovers

• Worry less about…– App deployment– Capacity planning

• Focus on writing your app

Simple Scale Out• Changes in traffic• Need more servers?• Need fewer servers?

I want everything…• …and it should be easy.• Azure let’s you worry about writing your app• Don’t have to learn a whole bunch of new stuff• Leverage your existing dev skills

Azure: The Developer View• Write it in Visual Studio

– New project types– Debug your code

• .NET, ASP.NET, WCF, IIS7, LINQ• Azure Storage

– Database in the cloud– (with a few caveats)

• Desktop development versions of– Azure Fabric– Azure Storage

Demo 1: Hello, World

Hello, World: Discuss.• Doesn’t look like much but…

– that’s “internet scale”-able– Highly available

• Mostly stuff you already know

Debugging In The Cloud• We can debug a service in Visual Studio• How do you debug a service that has been deployed?

– Answer: you don’t• Logging is the answer• RoleManager.WriteToLog(eventLogName, message)

– Event log name values: Error, Information, Warning, Debug, Critical

Demo 1.1: Hello World + Logging

AZURE STORAGE

Azure Storage• Simple database in the cloud

– Tables• “structured storage”

– Blobs– Queues

• You don’t worry about replication• Scales like nobody’s business• Development version

– DevelopmentStorage.exe– Uses SQL Server Express

Table Storage• Every row has RowKey & Partition Key• RowKey = primary key• PartitionKey

– Helps you tell Azure how to scale your data– You have to think about how you’ll be querying– By State? By Hour? Other?

RowKey PartitionKey FirstName LastName1 MA Ben Day

2 MA John Malkovich

3 WA Bill Gates

4 CA Steve Jobs

PartitionKey• Your partitions could be on different servers• Best practice: If you know your PartitionKey, add it to

the WHERE clause• No PartitionKey in the WHERE insane table scans• Recommendation: More partitions is (probably) better

• Think hard about your partition key in the beginning– Else, roll your own re-partitioning

Column Data Types• Partition key and Row key

– String (up to 64KB)• Other properties

– String (up to 64KB)– Binary (up to 64KB)– Bool– DateTime – GUID– Int– Int64– Double

Demo 2: Azure Table Storage

MORE THAN JUST ASPX

Utility Compute without a UI• Azure uses the concept of “Roles”• Hello, World used a “Web Role”• The other role is a “Worker Role”

– Think windows service in the cloud

Web & Worker

Demo 3: Worker Role and a Queue• In a web role, create an ASP.NET page

– Creates a queue– Writes to a queue– Gets queue depth

• Worker Role– Reads the queue– “Processes” the message

DEPLOYMENT

Demo 4: Deploy To The Cloud• Change the storage config to use production servers

MISCELLANEOUS

Things to think about• No foreign keys• No triggers• No stored procedures• In Table storage, strings can only be 64k

– You’ll need to use a mix of Blob and Tables• Think hard about what config values you put in

web.config/app.config vs ServiceConfiguration.cscfg

The Big Questions• When?

– Sometime in 2009• An actual Service Level Agreement (SLA)• More data-centers

– Now in US only– Global at go-live

• What will it cost?– It will depend on what you use

More resources• My Blog

– http://blog.benday.com– Sample code– More Azure content to come…

• Steve Marx’s blog– http://blog.smarx.com/ – Evangelist for the Azure team

• Azure.com

Final questions?

About the speaker

• Owner, Benjamin Day Consulting, Inc.– Email: benday@benday.com– Web: http://www.benday.com– Blog: http://blog.benday.com

• Trainer– Visual Studio Team System, Team Foundation Server

• Microsoft MVP for VSTS• Microsoft VSTS/TFS Customer Advisory Council• Microsoft Cloud Services Advisory Group• Leader of Beantown.NET INETA User Group