Your SlideShare is downloading. ×
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Introduction to my Windows Azure Application
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Introduction to my Windows Azure Application

621

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
621
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Introduction to my Windows Azure Application Wallace B. McClure www.scalabledevelopment.com http://www.aspnetpodcast.com http://www.morewally.com Twitter: @wbm
  • 2. Who the heck am I?
    • “ Beginning AJAX with ASP.NET”
    • “ Beginning ASP.NET 2.0 AJAX”
    • “ Professional ASP.NET 3.5 Service Pack 1”
    • “ Building iPhone Apps for the .NET Developer”
    • MVP – ASP.NET.
    • ASPInsider.
    • ASP.NET Podcast.
    • INETA Speaker’s Bureau.
  • 3. INETA
    • International .NET Association.
    • Approximately 90 NA Speaker’s Bureau Members.
    • Regional Speaker’s Bureau.
    • Webcasts.
  • 4. Disclaimer:
    • Detail look at my application. I’m learning everyday.
    • Overview of additional features that I think are important.
    • Most of the code and code ideas are on my blog or ASP.NET Podcast.
    • My app is changing.
  • 5. (part of) My App
    • Scheduling tweets.
    • Multiple twitter ids per user id.
    • User -> TwitterId -> TwitterEntry.
  • 6. What the heck is CC?
    • Applications that provide some or all of their processing through a service over common http protocols.
    • Some ability to use additional processing as needed.
    • Some ability to process data (events, messages, table data, something) outside of user input.
  • 7. What is Windows Azure?
    • Introduced at the Microsoft PDC (October, 2008).
    • Cloud Services Operating Environment from Microsoft.
    • Scale Out is the key.
    • Web.
    • Data.
    • Internal Processing.
    • Supports:
      • .NET.
      • Java.
      • Ruby.
      • SOAP/REST access.
  • 8. Other offerings
    • Amazon
      • VM based.
      • Scale out to multiple VM Servers.
      • Consumable Web services.
    • Google App Engine
      • Similar to Microsoft Azure.
      • Java/Python languages.
    • VMWare
  • 9. What is Azure Programmatically?
    • Web Role (Web UI).
    • Worker Role (similar to a windows service).
    • Storage.
      • Blobs.
      • Data.
      • Queues. – key to scalability.
  • 10. Web Role Azure Storage Browser Browser Browser Browser Browser Web Role Web Role N L B Worker Role Worker Role Worker Role N L B p1 p2 p3
  • 11. Tools
    • Develop locally.
    • Visual Studio 2008/2010 Project Plugin.
    • Development Storage.
    • Development Fabric.
    • Sql Server Express running locally.
  • 12. Services Provided
    • Web Applications.
    • Storage – File, Blobs, and Tables.
    • Queues.
    • Timed Processing.
  • 13. Features / Languages Supported
    • Server Side.
      • C#.
      • VB.
      • PHP.
    • Web:
      • Client side javascript.
      • AJAX.
      • WCF.
      • Webforms/MVC.
    • Worker Role.
  • 14. APIs
    • REST based.
    • High level library.
    • ASP.NET Providers.
  • 15. Data
    • Azure Storage.
    • Azure Sql.
  • 16. Azure Tables
    • Not a standard database.
    • Class/entity definitions. (key – object)
    • Azure Tables are simple.
    • No relationships.
    • Azure SQL for “more” database services.
    • NoSql type datastore.
    • Designed for billions of records.
  • 17. Azure Sql
    • 1/10 gigs.
    • Ports.
    • Sql Server in the clouds without:
      • FTS.
      • CLR.
      • Bulk Upload.
  • 18. Local vs. Hosted
    • Local uses Sql Server Express.
      • Sql Server Manager.
      • Rows/Columns.
      • Create Tables with the dev tool.
    • Hosted Azure.
      • Create Tables.
      • Objects can have different versions.
  • 19. Azure Storage Class Definitions
    • Classes inherit from TableStorage.
    • DataServices
      • CRUD stuff.
      • LINQ-lite.
      • .ToList<T> seems to be everywhere.
  • 20. Indexing Strategies
    • Not simple.
    • PartitionKey / RowKey.
    • No secondary indexing support at this time. Support has been announced.
    • Partitions – spread out data and processing.
    • Partitions/RowKeys are a good place to put indexes.
  • 21. Changing data schema
    • What is a schema in Azure vs. Sql Server?
      • Not fixed.
      • XML.
    • How do you handle changes?
      • Old objects.
      • Code.
  • 22. How do you handle Relationships?
    • Natural Keys?
    • Surrogate Keys?
    • No foreign key relationships at this time.
  • 23. How do you bulk load data?
    • Apps rarely start with no data.
    • I wrote a custom app.
    • Mike Amundsen resources online.
  • 24. Transactions
    • Partitions and Table must match.
    • 100 CUD operations.
    • 4megs max size.
  • 25. My data strategy
    • User – TwitterID – TwitterEntry.
    • TwitterID - PartitionKey: UserName.
    • TwitterEntry – Partitionkey: UserName / TwitterID.
    • Relationships?!?
      • Surrogate Key?
      • Natural Key?
  • 26. Remote Data
    • REST.
    • WSDL
      • Basic Authentication.
      • WS Auth, under certain circumstances.
      • Painful……………….
  • 27. Examples……..
    • Table Storage.
    • Data
    • TwtMstr.
  • 28. Queueing
    • Queueing is GOOD! – Key to scaling out to multiple worker roles.
    • Queue messages are returned to the queue after 30 seconds of not being deleted.
    • Example (not in my app, yet).
  • 29. What should your app have in it?
    • Globalization / Localization.
    • Services.
    • AJAX.
  • 30. Debugging
    • Local app – Local data.
      • Initial development.
      • Visual Studio.
    • Local app – Hosted data.
      • Visual Studio.
    • Hosted app – Hosted data.
  • 31. Deployment
    • Staging.
    • Production.
  • 32. Gotchas
    • Changes to data schema.
    • Query for a record that does not exist.
    • FullTrust.
    • DateTime.
    • Configuring WCF/Membership.
      • REST (Silverlight support).
      • SOAP/WSDL.
  • 33. Azure Programming Environment
    • ASP.NET 3.5 Service Pack 1.
    • Approximately medium trust.
    • Web based applications.
    • Client applications can integrate by calling SOAP or REST web services.
    • Tools for Visual Studio 2008.
  • 34. Status
    • REST APIs.
    • StorageClient.
    • ASP.NET Providers.
    • Table Data.
  • 35. I want to take an existing app and run it in Azure.
    • You can, within limits.
    • Sql Azure is required.
      • Relatively small db.
      • No CLR.
      • No FTS.
  • 36. What does Azure physically look like?
  • 37. Pricing / Availability
    • November, 2008 – PDC.
    • November, 2009 – PDC.
    • Pricing is rather complex.
      • Traffic.
      • CPU utilization.
  • 38. Additional Sources of Information
    • Azure Training Kit.
    • AZURE Forums on MSDN.
    • http://www.windowsazure.com/
    • http://blogs.msdn.com/
    • http://www.morewally.com/
    • http://www.aspnetpodcast.com/
  • 39. Application
    • @twtmstr.
    • http://www.twtmstr.com/ .
    • Sign up for an account and send me your feedback!
  • 40.
    • http://www.scalabledevelopment.com
      • Training.
      • Mentoring.
      • Business Process Automation.
      • Software Development.
    • Questions/Comments: wallym@scalabledevelopment.com

×