/
All artwork on this slide deck created by All artwork on this slide deck created by

All artwork on this slide deck created by - PowerPoint Presentation

celsa-spraggs
celsa-spraggs . @celsa-spraggs
Follow
414 views
Uploaded On 2016-05-07

All artwork on this slide deck created by - PPT Presentation

Josh Twist If you steal it please provide credit and a link to httpwwwthejoyofcodecomcloudartworkaspx CLOUDS GUIDs and HOUNDS Josh Twist Principal ADM Premier Support for Developers ID: 309187

unleash 000 problem solution 000 unleash solution problem latency microsoft storage connect thejoyofcode www poll polling azure nodes etag

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "All artwork on this slide deck created b..." is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

All artwork on this slide deck created by

Josh Twist

. If you steal it please provide credit and a link to

http://www.thejoyofcode.com/cloud_artwork.aspx

Slide2

CLOUDS,

GUIDs and HOUNDSJosh TwistPrincipal ADMPremier Support for Developers (PSfD)Microsoft UK

www.thejoyofcode.com

@

joshtwist

jtwist@microsoft.comSlide3

The Scenario

Predictable BurstingSlide4

High level stuff you already know

Web Roles

Worker Roles

Table Storage

Blob Storage

SQL AzureSlide5

The Architecture

Push

Pull

Push

LOTS of usersSlide6

Problem 1: Seriously? A

guid?Internet Explorer 9Slide7

Possible Solutions

Use SQL Azure

Create a global counter

Configure Partitions

0-1,000,000

1,000,001

- 2,000,000

2,000,001

- 3,000,000Slide8

The problem(s) with configuration

X

X

XSlide9

Our Solution

R = 1,000

R

= 1,000

Write back new max identifier where

eTag

is the same.

Request current max identifier

3,000

eTag

= XCV243987243KDSlide10

Nice!

Rate of requests to storage = Rate of requests / R(not related to the number of nodes)Entirely self managingProduces relatively sequential identifiersIncredibly fastConfiguration can be modified at runtime if necessarySlide11

Problem 2: Release the Hounds!Slide12

Solution 1: Polling

Poll

Poll

Poll

Unleash!

Go!Slide13

Polling Approach

ProsConsEasy PeasyPolling always feels a bit… ‘naff’?CheapInherent latency (up to T)Slide14

Solution 2: Listening

Connect

Connect

Connect

Unleash!

Unleash!

Unleash!

Unleash!Slide15

Listening Approach

ProsConsDirect! Feels good.Costs money to open connections from your ‘n’ nodesNo Latency?Actual LatencyNo state. A freshly provisioned node could miss the ‘unleash’ signal.Slide16

Thanks!

This story will feature in November’s MSDN magazinewww.thejoyofcode.com@joshtwist

jtwist@microsoft.com

Want to know more about

PSfD

? Mail me.

Any Qs? Get me on Twitter