16
Developing Azure Solution In Developer Prespectives Riza Oktavian Client Development Specialist | Microsoft Innovation Center Yogyakarta, Indonesia

Azure in Developer Perspective

  • Upload
    rizaon

  • View
    123

  • Download
    0

Embed Size (px)

DESCRIPTION

My slide deck used in Cloud Computing Seminar, 4 December 2010, Universitas Atmajaya, Yogyakarta

Citation preview

Page 1: Azure in Developer Perspective

Developing Azure Solution

In Developer Prespectives

Riza Oktavian

Client Development Specialist | Microsoft Innovation Center

Yogyakarta, Indonesia

Page 2: Azure in Developer Perspective

Azure for Developer AudiencesWeb Corporate ISV

Develop applications at

Internet scale

Focus on business logic and

not operational constraints

Use one platform for

expansive user experience

and device support

Get started quickly using

your existing skills

Reach broad market with

Microsoft Live properties

Extend existing and build

new applications

Accelerate Innovation with

new IT flexibility

Use consistent, familiar

programming models &

tools

Maintain enterprise

architecture & process

governance

Integrate applications with

partners across networks

Accelerate SaaS solutions

development

Deepen customer

relationships and

continuously provide new

value

Capture built-in multi-

tenancy

Inherent extensibility &

integration features

Flexibility Reliability Scalability Security Interoperability

Page 3: Azure in Developer Perspective

Cloud Service Anatomy

Windows Azure Storage (Table, Blob, Queue)

Web Role

LB

SQL Azure Internet Services

Web Role 2 (IIS)Port 8080

Worker Role 2

Worker Role 1Web RoleWeb Role 1 (IIS)Port 80

Worker Role 2

Page 4: Azure in Developer Perspective

Developing in Azure Differences

Azure Solutions have a Cloud Project – Describes the platform

Additional Entry Points in the Execution Pipeline

Use RoleEnvironment Class for Infrastructure knowledge

Always Copy referenced Assemblies

Page 5: Azure in Developer Perspective

WorkerRole 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 .

Page 6: Azure in Developer Perspective

WebRole 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.

Page 7: Azure in Developer Perspective

MIC

Web Application

SQL Databases

• aspnetdb

• MIC

WCF Service

Intranet Offices Location

Page 8: Azure in Developer Perspective

MIC

Azure Application

SQL Databases

• aspnetdb

• MIC

ServiceBus Service

Intranet Offices Location

Page 9: Azure in Developer Perspective

Porting the Web into Azure Application

Demo

PAGE 9

Page 10: Azure in Developer Perspective

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 http://sqlazuremw.codeplex.com/

Migrating SQL Server Data to SQL Azure

Page 11: Azure in Developer Perspective

Change Service and Client implementation

Add a ServiceBus Reference

Create a Service Bus namepsace

Generate a new Endpoint Address

Use a RelayBinding from Azure AppFabric SDK

Add a TransportClientEndpointBehavior for registering the Service to the Service Bus

Migrating Intranet Service to App Fabric

SB

Page 12: Azure in Developer Perspective

Developer Prespectives

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

Page 13: Azure in Developer Perspective

Development Best Practices

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

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

Make sure you copy local assemblies not in the Framework

Use the _CSPACK_FORCE_NOENCRYPT_ to check if your package is valid

Always develop in the Azure DevFabric first

Page 14: Azure in Developer Perspective

PHP, Java, others

Azure Supporting Technology

PAGE 14

Page 15: Azure in Developer Perspective

Azure gives us fexibility in development

• Specific Development API in Azure

• Casual Development Scenario

• Development Best Practices

• Technology Supports in Azure

Conclusion

Page 16: Azure in Developer Perspective

© 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Internet Explorer and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.

The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market

conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.

MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Thank you.