29
Advanced cloud services developme Haishi Bai Windows Azure Technical Evangelist Advanced Cloud Services Development 3-025 3-040 Getting started with cloud service (Paul Yuknewicz) 3-025

Advanced cloud services development

  • Upload
    huela

  • View
    77

  • Download
    0

Embed Size (px)

DESCRIPTION

3-025. Advanced cloud services development. Haishi Bai Windows Azure Technical Evangelist Advanced Cloud Services Development 3-025. 3-040. Getting started with cloud service (Paul Yuknewicz ). Agenda. Faster cloud services. Hybrid cloud services. Devices + cloud services. - PowerPoint PPT Presentation

Citation preview

Page 1: Advanced  cloud services development

Advanced cloud services development

Haishi BaiWindows Azure Technical EvangelistAdvanced Cloud Services Development3-025

3-040

Getting started with cloud service (Paul Yuknewicz)

3-025

Page 2: Advanced  cloud services development

Hybrid cloud services

Agenda Faster cloud services

Devices + cloud services

Page 3: Advanced  cloud services development

Building faster cloud services

Page 4: Advanced  cloud services development

Why performance mattersIn the world of Internet, a slow service equals to a

broken serviceReduce resource consumption means saving moneyIncreasing system throughputs means higher profitability

Performance by Design

Page 5: Advanced  cloud services development

MeasurePerformance baseline

AnalyzeEstablish goalsIdentify bottlenecksCheck against exit conditions

ExecuteDesignTechniquesRefactor

Performance by processAnaly

ze

Execute

Measure

Page 6: Advanced  cloud services development

Measurement and monitoringWhat to measureResponse time (Client perceived response time, server processing time)ThroughputResource utilization (CPU, memory, disk I/O, network bandwidth)Queues, cache utilization, sessions, view states, page size, etc.

What to usePerformance countersSystem.Diagnostics, WMI, …Tools (profilers, monitors, etc.)

Page 7: Advanced  cloud services development

Demo: performance counters

Page 8: Advanced  cloud services development

Performance opportunities.Net framework 4.5–parallel, asyncWindows Azure caching (GA)SignalR and Websocket enable new application opportunities

Page 9: Advanced  cloud services development

Demo: Fireworks!

Page 10: Advanced  cloud services development

Performance at scale opportunitiesCDNTraffic managerIIS 8CPU throttlingCentralized SSL certificate managementDynamic IP filtering

Page 11: Advanced  cloud services development

Traffic Manager and CDN

Page 12: Advanced  cloud services development

Demo: IIS 8 CPU throttling

Page 13: Advanced  cloud services development

Building hybrid cloud services

Page 14: Advanced  cloud services development

Hybrid cloud challengesEnterprises typically comprised of hundreds of applicationsCustom builtAcquired from 3rd partiesPart of legacy systems

Customers do not think about these system boundariesThey interact with the businessCommon processes and data sharing needs to be supported=integration

This is not an easy taskDifferent data types and formatsDifferent types of extensibility/states of modifications possible Different application platforms and systems

Page 15: Advanced  cloud services development

Windows Azure connectivityVirtual network PaaS and IaaS working togetherService bus relay

Page 16: Advanced  cloud services development

Public Endpoint

Internal Endpoint

Instance Input Endpoint

[0]

[1]Relay Endpoint

2-011

Introduction to Windows Azure IaaS (Mark Russinovich)

3-026

Advanced Windows Azure IaaS (Michael Washam)

Page 17: Advanced  cloud services development

Integration based on messagingWindows Azure Service Bus messagingLoose-couplingAsynchronous communicationRich set of integration patterns• Publish/subscribe• Load balancing• Content-based routing• Ensured delivery• Scheduling• …

3-033

Building hybrid apps using service bus (David Ingham)

Page 18: Advanced  cloud services development

Devices + cloud services

Page 19: Advanced  cloud services development

84% of Time Techland Top 50 iPhone applications, 73% of PC Magazine Top 100 Android applications have cloud backbones or have web integrations supporting primary features.

Facts of device applications

http://techland.time.com/2012/02/15/50-best-iphone-apps-2012

http://www.pcmag.com/article2/0,2817,2393097,00.asp

Drag picture to placeholder or click icon to add

Page 20: Advanced  cloud services development

Demo: part inspector

Page 21: Advanced  cloud services development

The scenario

Page 22: Advanced  cloud services development

The architecturevar captureUI = new Windows.Media.Capture.CameraCaptureUI();StorageFile file = await captureUI.CaptureFileAsync(Windows.Media.Capture.CameraCaptureUIMode.Photo);BitmapImage image = new BitmapImage(new Uri(file.Path));

Message msg = new Message(buffer);msg.Properties.Add("Width", thumb.OriginalWidth);msg.Properties.Add("Height", thumb.OriginalHeight);await mQueueClient.SendAsync(msg);

BrokeredMessage receivedMessage = null;receivedMessage = QueueClient.Receive();

if (receivedMessage != null){ //Read message properties int width = (int)receivedMessage.Properties["Width"]; … //Convert message body, which is a byte array, into a Bitmap var array = receivedMessage.GetBody<byte[]> (new DataContractJsonSerializer(typeof(byte[]))); …}

BrokeredMessage msg = new BrokeredMessage();msg.Properties["Result"] = payload;msg.Properties["AssessmentLevel"] = result.AssessmentLevel;…TopicClient.Send(msg);…receivedMessage.Complete();if (!manager.SubscriptionExists("ProcessingResult",

"FactoryAlert")){ SubscriptionDescription description = new SubscriptionDescription("ProcessingResult", "FactoryAlert"); SqlFilter filter = new SqlFilter("AssessmentLevel = 3"); manager.CreateSubscription(description, filter);}…

var thumb = await file.GetThumbnailAsync(Windows.Storage.FileProperties.ThumbnailMode.SingleItem, 95);BitmapImage thumbImage = new BitmapImage();…byte[] buffer = await converThumbnailtoByteArray(thumb);…

Bitmap bw = toBinaryImage(picture);var ret = erode(bw).countHoldes(bw).markFeatures(bw);…ret.AssessmentLevel = mEnforcer.Assess(ret);ret.MissingFeatures = mEnforcer.FindMissingParts(ret);…

Page 23: Advanced  cloud services development

PerformanceProcess, portal, 3rd party tool, Performance counters, .Net 4.5 async, Windows Azure caching, IIS 8

HybridInter-role communication, virtual network, service bus relay, messaging patterns

DeviceHybrid design, Windows 8 client, worker role, service bus messaging

Summary

Page 24: Advanced  cloud services development

Resources

Page 25: Advanced  cloud services development

Windows Azure resourcesWindows Azure training kit:https://www.windowsazure.com/en-us/develop/net/other-resources/training-kit/Windows Azure samples:https://github.com/WindowsAzure-Samplesblog.haishibai.com

@HaishiBai2010

[email protected]

Page 26: Advanced  cloud services development

Feedback

Page 27: Advanced  cloud services development

Thank you!

Page 28: Advanced  cloud services development

• Follow us on Twitter @WindowsAzure

• Get Started: www.windowsazure.com/build

Resources

Please submit session evals on the Build Windows 8 App or at http://aka.ms/BuildSessions

Page 29: Advanced  cloud services development

© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista 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.