windows azure deep dive l.
Skip this Video
Loading SlideShow in 5 Seconds..
Windows® Azure™ Deep Dive PowerPoint Presentation
Download Presentation
Windows® Azure™ Deep Dive

Loading in 2 Seconds...

play fullscreen
1 / 27

Windows® Azure™ Deep Dive - PowerPoint PPT Presentation

  • Uploaded on

Windows® Azure™ Deep Dive. Leverage Azure Services & Platform with Existing Application. Emmanuel Mesas Microsoft Western Europe Agenda. Prepare – Azure Infrastructure SDK Azure Role Explained RoleEnvironment API Migrate – Transfer to Azure WebRole SQL Azure

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'Windows® Azure™ Deep Dive' - ostinmannual

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
windows azure deep dive
Windows® Azure™ Deep Dive

Leverage Azure Services & Platform with Existing Application

Emmanuel Mesas

Microsoft Western Europe

  • Prepare – Azure Infrastructure SDK
    • Azure Role Explained
    • RoleEnvironment API
  • Migrate – Transfer to Azure
    • WebRole
    • SQL Azure
    • ServiceBus
  • Monitor – Azure Diagnostic SDK
    • Instrumenting Azure Application
    • Azure Developer and Administrator Tools
cloud service anatomy
Cloud Service Anatomy

Web Role

Worker Role 1

Web Role

Web Role 1 (IIS)

Port 80


Web Role 2 (IIS)

Port 8080

Worker Role 2

Worker Role 2

Windows Azure Storage (Table, Blob, Queue)

SQL Azure

Internet Services


Azure Solutions have a VS Cloud Project – Describes the platform

Additional Entry Points in the Execution Pipeline

SDK expose a RoleEnvironment Class for Infrastructure knowledge

Always Copy referenced Assemblies not part of the .NET Framework 3.5 SP1

workerrole call order

Worker Role Call Order:

WaWorkerHost process is started.

Worker Role assembly is loaded and surfed for a class that derives from RoleEntryPoint.  This class is instantiated.

RoleEntryPoint.OnStart() is called.

RoleEntryPoint.Run() is called. 

If the RoleEntryPoint.Run() method exits, the RoleEntryPoint.OnStop() method is called .

WaWorkerHost process is stopped. The role will recycle and startup again.

WorkerRole Call Order
webrole call order

Web Role Call Order:

WaWebHost process is started.

Hostable Web Core is activated.

Web role assembly is loaded and RoleEntryPoint.OnStart() is called.

Global.Application_Start() is called.

The web application runs…

Global.Application_End() is called.

RoleEntryPoint.OnStop() is called.

Hostable Web Core is deactivated.

WaWebHost process is stopped.

WebRole Call Order
roleenvironment api

Infrastructure API to use from RoleEntryPoint classes

Discover Infrastructure Resources

Local Storages

Network Endpoints (max 5)

Connection Strings

Application Roles & Other Role Instances (max 5)

Detect Infrastructure changes

RoleEnvironment API
demo a c loud project and the infrastructure sdk
DEMO: A Cloud Project and the Infrastructure SDK

Accessing Configuration & Connection Strings

AccessingRole IP Addresses

migrating nerddinner to windows azure
MigratingNerdDinner to Windows Azure

Web Application -> WebRole

SQL Server Data -> SQL Azure

Profile & Membership Data -> SQL Azure

Intranet Web Service -> AppFabric ServiceBus


SQL Databases

  • aspnetdb
  • NerdDinner


Web Application

WCF Service

Intranet Offices Location


SQL Databases

  • aspnetdb
  • NerdDinner


Azure Application

ServiceBus Service

Intranet Offices Location

migrating web application to webrole

Add a Cloud Project to the exiting solution

Create a WebRoleEntryPoint

Add Trace Information in Config file

AddDiagnosticConfigString in the Role Config file

Copy Referencedassemblies

Migrating Web Application to WebRole
migrating sql server data to sql azure

Use the Azure Portal for initial creation

Use SQL Server Management Studio 2008 R2 for managing SQL Azure databases

Use SQL Azure Migration Wizard v3.2 for analyzing and generating migration db scripts

Migrating SQL Server Data to SQL Azure
migrating intranet service to app fabric sb

Change Service and Client implementation

Add a ServiceBus Reference

Create a Service Bus namepsace

Generate a new EndpointAddress

Use a RelayBindingfrom Azure AppFabric SDK

Add a TransportClientEndpointBehavior for registering the Service to the Service Bus

Migrating Intranet Service to App Fabric SB
instrument azure applications
Instrument Azure Applications

With Windows Azure Diagnostics SDK

windows azure diagnostics

SDK component providing distributed monitoring & data collection for cloud apps

Support Standard Diagnostics APIs

Cloud-Friendly – Manage multiple role instances centrally

Scalable – Built on Windows Azure Storage & used by scale-out Windows Azure platform components

Developer In Control – What to collect & when to collect it

Windows Azure Diagnostics
wa diagnostics storage consideration

Standard WA Storage costs apply for transactions, storage & bandwidth

Data Retention

Local buffers are aged out by the Diagnostic Monitor according to configurable quotas

You control data retention for data in table/blob storage

Query Performance on Tabular Data

Partitioned by high-order bits of the tick count

Query by time is efficient

Filter by verbosity level at transfer time

WA Diagnostics – Storage Consideration
demo windows azure diagnostics
DEMO: Windows Azure Diagnostics

How-to activate Traces

Transfer to Azure Storage

Visualize Data

development best practices

Always develop in the Azure DevFabric first

Make sure you copy local assemblies not in the Framework

Use the _CSPACK_FORCE_NOENCRYPT_ to check if your package is valid

Check application using Cloud Resources (Storage, Service and SQL Azure)

Remove the use of Development Storage (in case some code uses it)

Development Best Practices
deployment best practices

Use Blob Storage – savings by deleting the App

For compatibility and external resources, use the Windows Azure Drive – App can Mount and Unmount drive on demand.

Enable Azure Diagnostic API and use .NET Framework Diagnostic classes (Trace.Write)

Deployment Best Practices
azure developer tool bench


Azure Management Console

Cloud Storage Studio

Azure Diagnostic Manager

Azure Developer Tool bench
next step


Sign up at the Windows Azure platform

developers’ portal:

Windows Azure access

Developer tools

White papers

Sample applications

Plan pilot applications

Learn more at Microsoft’s