16
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/clo ud_artwork.aspx

CLOUDS, GUIDs and HOUNDS Josh Twist Principal ADM

  • Upload
    prema

  • View
    30

  • Download
    0

Embed Size (px)

DESCRIPTION

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. CLOUDS, GUIDs and HOUNDS Josh Twist Principal ADM Premier Support for Developers ( PSfD ) Microsoft UK. [email protected]. - PowerPoint PPT Presentation

Citation preview

Page 1: CLOUDS,  GUIDs  and HOUNDS Josh Twist Principal ADM

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

Page 2: CLOUDS,  GUIDs  and HOUNDS Josh Twist Principal ADM

CLOUDS, GUIDs and HOUNDS

Josh TwistPrincipal ADM

Premier Support for Developers (PSfD)Microsoft UK

www.thejoyofcode.com@joshtwist

[email protected]

Page 3: CLOUDS,  GUIDs  and HOUNDS Josh Twist Principal ADM

The ScenarioPredictable

Bursting

Page 4: CLOUDS,  GUIDs  and HOUNDS Josh Twist Principal ADM

High level stuff you already know

Web Roles Worker Roles

Table Storage Blob Storage SQL Azure

Page 5: CLOUDS,  GUIDs  and HOUNDS Josh Twist Principal ADM

The Architecture

Push

LOTS of

users

Page 6: CLOUDS,  GUIDs  and HOUNDS Josh Twist Principal ADM

Problem 1: Seriously? A guid?

Internet Explorer 9

Page 7: CLOUDS,  GUIDs  and HOUNDS Josh Twist Principal ADM

Possible SolutionsUse SQL

Azure

Create a global counter

Configure Partitions0-

1,000,000

1,000,001 -

2,000,000

2,000,001 -

3,000,000

Page 8: CLOUDS,  GUIDs  and HOUNDS Josh Twist Principal ADM

The problem(s) with configuration

XXX

Page 9: CLOUDS,  GUIDs  and HOUNDS Josh Twist Principal ADM

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 = XCV243987243KD

Page 10: CLOUDS,  GUIDs  and HOUNDS Josh Twist Principal ADM

Nice!• Rate of requests to storage = Rate of

requests / R(not related to the number of nodes)

• Entirely self managing• Produces relatively sequential

identifiers• Incredibly fast• Configuration can be modified at

runtime if necessary

Page 11: CLOUDS,  GUIDs  and HOUNDS Josh Twist Principal ADM

Problem 2: Release the Hounds!

Page 12: CLOUDS,  GUIDs  and HOUNDS Josh Twist Principal ADM

Solution 1: Polling

Poll

Poll

Poll

Unleash!

Go!

Page 13: CLOUDS,  GUIDs  and HOUNDS Josh Twist Principal ADM

Polling ApproachPros Cons

Easy Peasy Polling always feels a bit… ‘naff’?

Cheap Inherent latency (up to T)

Page 14: CLOUDS,  GUIDs  and HOUNDS Josh Twist Principal ADM

Solution 2: ListeningConne

ct

Connect

Connect

Unleash!

Unleash!

Unleash!

Unleash!

Page 15: CLOUDS,  GUIDs  and HOUNDS Josh Twist Principal ADM

Listening Approach

Pros ConsDirect! Feels good.

Costs money to open connections from your ‘n’ nodes

No Latency? Actual LatencyNo state. A freshly provisioned node could miss the ‘unleash’ signal.

Page 16: CLOUDS,  GUIDs  and HOUNDS Josh Twist Principal ADM

Thanks!

This story will feature in November’s MSDN magazine

www.thejoyofcode.com@joshtwist

[email protected]

Want to know more about PSfD?

Mail me.

Any Qs? Get me on

Twitter