1 / 67

Switching on the cloud for Silverlight

Switching on the cloud for Silverlight. MSDN Live Meeting 27-06-2011. Gill Cleeren Microsoft Regional Director – Silverlight MVP Ordina Belgium. About myself. Gill Cleeren Microsoft Regional Director MVP ASP.NET .NET Architect @Ordina ( www.ordina.be )

finian
Download Presentation

Switching on the cloud for Silverlight

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. Switching on the cloud for Silverlight MSDN Live Meeting 27-06-2011 Gill Cleeren Microsoft Regional Director – Silverlight MVP Ordina Belgium

  2. About myself... • Gill Cleeren • Microsoft Regional Director • MVP ASP.NET • .NET Architect @Ordina (www.ordina.be) • Speaker (TechDays, DevDays, NDC Norway, Spring Conference UK, SQL Server Saturday Switzerland, TechEd Berlin, SDC...) • Visug user group lead (www.visug.be) • Author (Silverlight 4 Data and services cookbook) • Blog: www.snowball.be • Email: gill@snowball.be • Twitter: @gillcleeren

  3. Agenda • What is Windows Azure? • Parts of Windows Azure • Why does a Silverlight developer need to care? • Developing for Windows Azure • Required tools • Emulators (“local cloud”) • Azure Portal • Moving Silverlight applications to the cloud • Database only • WCF • What with REST • Entire Silverlight applications • RIA Services • Azure as intermediate layer for Twitter

  4. Agenda (2) • Using blob storage • Accessing files in blob storage • XAP hosted in blob storage • (optional) Windows Phone 7 and Azure • Accessing services in the cloud

  5. What is Windows Azure?

  6. What is a Cloud Platform ? "The concept, quite simply, is that vast computing resources will reside somewhere out there in the ether (rather than in your computer room) and we'll connect to them and use them as needed." • Jonathan Weber (The Times Online)

  7. So, Windows Azure then? • An operating system for the cloud • Internet Scale • Microsoft data centers • Based on internet standards (Interopability) • Features • Service Management / Scalability • Compute power • Storage • Familiar tools for development

  8. Windows Azure Cloud Operating System: More value than what you think of with the term “OS” however! Compute Virtual Network Storage Run code in the cloud Scalable storage for files Connect cloud with on-premise

  9. Microsoft is committed to the cloud! Infrastructure-as-a-Service “SaaS” “PaaS” “IaaS” Platform-as-a-Service Software-as-a-Service consume build host Abstraction

  10. Cloud Services Although the abstraction is raised, developers still need to know what happens behind the scenes! Infrastructure (as a Service) Platform (as a Service) Packaged Software Software (as a Service) Applications Applications Applications Applications You manage Data Data Data Data You manage Runtime Runtime Runtime Runtime Managed by vendor Middleware Middleware Middleware Middleware You manage Managed by vendor O/S O/S O/S O/S Virtualization Virtualization Virtualization Virtualization Managed by vendor Servers Servers Servers Servers Storage Storage Storage Storage Networking Networking Networking Networking

  11. Parts of Windows Azure • Hosted services • Web role • IIS in the cloud • For running ASP.NET applications • Worker role • Run any executable in the cloud (own database, server...)

  12. Parts of Windows Azure (2) • Azure storage • Scalable storage in the cloud • 100TB per storage account • Auto-scale to meet massive volume and throughput • Accessible via RESTful Web Service API • Access from Windows Azure Compute • Access from anywhere via internet • Supporting .NET Client Library

  13. Parts of Windows Azure (3) • Azure storage • Blob storage • Table storage • Queue storage

  14. Parts of Windows Azure (4) • SQL Azure • Familiar SQL Server relational database model delivered as a service • Highly available • Contains: • Database • Reporting • Data sync

  15. Parts of Windows Azure (5) • AppFabric • Access control • Service bus • Caching

  16. Why does a Silverlight developer need to care? • Azure targets web applications • Highly available • Easy scaling • May not be important for XAP • Important for services and database

  17. Developing for Windows Azure • Required tools • Visual Studio (duh) • Azure SDK • Azure Tools • Installs • Compute emulator • Storage emulator • Account on Windows Azure

  18. Management portal

  19. Moving Silverlight applications to the cloud

  20. Let’s move! • Silverlight applications can be “moved” to Azure on different levels • Database only • WCF/ASMX/REST services • All-in: Move the hosting site • XAP in webrole • XAP in blob storage • RIA Services

  21. Scenario Hosting site Service layer (WCF, REST...) Database Silverlight application

  22. Case 1: Database only

  23. Scenario Hosting site Service layer (WCF, REST...) Database Silverlight application

  24. Database only • Case: • A Silverlight business app • WCF services to expose the data • Data in a SQL Server 2008 database • Task: move database only to the cloud

  25. Database only • Steps: • Create database on SQL Azure • Use Migration wizard to export database to Azure • Change connection strings in service configuration

  26. Database only Demo

  27. Case 2: WCF service

  28. Scenario Hosting site Service layer (WCF, REST...) Database Silverlight application

  29. WCF service • Case: • Silverlight business application communicates with WCF service, service exposes data • Data is migrated to SQL Azure • Task: move WCF service to Azure

  30. Side information • Silverlight can communicate with • ASMX • WCF (using BasicHttpBinding) • Both expose a WSDL file • Used by Visual Studio to generate proxy class • Generates config containing service location in Silverlight application • Possible to • move existing service • “use” cloud services inside VS Silverlight project

  31. Silverlight and WCF service • Steps: • Create Cloud project • Add webrole to contain service hosting site (ASP or WCF) • Test in compute emulator • Update Silverlight configuration to use new service address • Deploy service package to the cloud • Re-deploy new Silverlight application

  32. Silverlight and WCF service Demo

  33. REST service • Case: • Silverlight business application communicates with REST service, service exposes data • A WCF service can be configured to work as a REST service • Data is migrated to SQL Azure • Task: move REST service to Azure

  34. Side information • REST (REpresentational State Transfer) • Protocol based on web standards (GET, PUT...) • All information is a resource • Information exchanged over XML or JSON • Using WCF, we can create REST services • Silverlight sends request to URL • Service responds with XML • Silverlight can parse the XML Possible to move the REST service to Azure

  35. Silverlight and REST service • Steps: • Create Cloud solution • Move service hosting site to webrole (ASP or WCF) • Test in compute emulator • Update Silverlight configuration to use new service address • Deploy service package to the cloud • Re-deploy new Silverlight application (Yes, this is identical!)

  36. REST service Demo

  37. CASE 3: Move Silverlight to the cloud

  38. Scenario Hosting site Service layer (WCF, REST...) Database Silverlight application

  39. Move Silverlight to the cloud • Case: • Database hosted in SQL Azure • WCF Service hosted in Windows Azure (web role) • Silverlight application and hosting website need to move to the cloud • Task: • Move Silverlight hosting site to (other) web role

  40. Side information • Silverlight is just a XAP file, hosted inside an HTML, ASPX, PHP... page • XAP file is downloaded from • Azure Hosted service • Azure Storage • Site can be a web role

  41. Move Silverlight to the cloud • Steps: • Add second web role to cloud project OR second cloud project (accessible via port number) • (optional) Create a new hosted service for this role

  42. Move Silverlight to the cloud Demo

  43. CASE 4: RIA Services in the cloud

  44. RIA Services in the cloud • Case • Silverlight application that uses RIA Services • Server-side use of Entity Framework • Database is moved to SQL Azure • Task: • All-in approach: move everything to the cloud

  45. Side information • RIA Services create a link between server-side and client-side project • Hosting site requires configuration changes and assembly references • RIA Services is not installed on your Azure VM! • Specific template exists if starting from scratch

  46. RIA Services in the cloud • Steps: • Add new web role to cloud project • Move service hosting site to webrole • Change configuration • Set Copy local to true for RIA Services assemblies • Deploy Silverlight XAP along with services • Services can be in a different assembly, will be hosted alongside

  47. RIA Services in the cloud Demo

  48. Case 5: Use Azure as Twitter intermediate

  49. Scenario SERVICE Silverlight Twitter

  50. Use Azure as Twitter intermediate • Case • We want to use Twitter API in in-browser Silverlight apps • Need to build intermediate service layer • Task: • Use Windows Azure for this purpose

More Related