Presentation is loading. Please wait.

Presentation is loading. Please wait.

Mark Simms Principal Program Manager Windows Azure Customer Advisory Team.

Similar presentations


Presentation on theme: "Mark Simms Principal Program Manager Windows Azure Customer Advisory Team."— Presentation transcript:

1 Mark Simms (@mabsimms) Principal Program Manager Windows Azure Customer Advisory Team

2

3

4

5

6

7

8

9

10

11

12 What are the “9”s Availability %Downtime per yearDowntime per month*Downtime per week 90% ("one nine")36.5 days72 hours16.8 hours 99% ("two nines")3.65 days7.20 hours1.68 hours 99.9% ("three nines")8.76 hours43.2 minutes10.1 minutes 99.99% ("four nines")52.56 minutes4.32 minutes1.01 minutes 99.999% ("five nines")5.26 minutes25.9 seconds6.05 seconds 99.9999% ("six nines")31.5 seconds2.59 seconds0.605 seconds 12 Study Windows Azure Platform SLAs: Compute External Connectivity: 99.95% (2 or more instances) Compute Instance Availability: 99.9% (2 or more instances) Storage Availability: 99.9% SQL Azure Availability: 99.9%

13

14

15

16

17

18

19

20

21 PlatformContextSample Target e2e latency max “Fast First” Retry Count DelayBackoff SQL Database Synchronous (e.g. render web page) 200 msYes350 msLinear Asynchronous (e.g. process queue item) 60 secondsNo45 sExponential Azure Cache Synchronous (e.g. render web page) 100 msYes310 msLinear Asynchronous (e.g. process queue item) 500 msYes3100 msExponential

22

23

24

25 definition: design elements that can cause an outage.

26 definition: a predictable root cause of the outage that occurs at a Failure Point.

27 Failure Mode Example 27 public int GetBusinessData(string[] parameters) { try { var config = Config.Open(_configPath); var conn = ConnectToDB(config.ConnectString); var data = conn.GetData(_sproc, parameters); return data; } catch (Exception e) { WriteEventLogEvent(100, E_ExceptionInDal); throw; } Potential Failure Points:  Database Server  Database  Table  Configuration File Potential Failure Modes:  DB Server not responding  DB offline  DB access denied  Sproc execute denied  DB doesn’t exist  DB timeout on connect  Index corrupt  Database corrupt  Table doesn’t exist  Table corrupt  Config file missing or invalid

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52 52 Microsoft Confidential Push vs. Pull Load Balanced Push Sync and good for sequential processing Dependent on downstream services Throttling vs. Performance Managed Pull/Throughput Asynchronous and event driven processing Easy Parallelisation and Pipelining Extending logic is easy Logic based Priority Date Amount Etc. Time based ASAP Gradually Periodically On-Demand Volume based Single In Batches

53 53 Microsoft Confidential Data on the inside – Data on the outside http://msdn.microsoft.com/en-us/library/ms954587.aspx Immutable (versions) Requires open schema for interop Reference Data Low concurrency updates (e.g. shopping basket) Activity Data Highly concurrent update (e.g. inventory) Should live in worker role Resource (shared) Data

54 54 Microsoft Confidential “Query Ready” Cache Query patterns Push the data close to where it is queried – Example: BING Maps Process, structure, produce, format etc. data and cache “query ready” data Light/cheap data production is OK Pure and Idempotent operations are usually good candidates Duplication is OK Same data in a different format Same data in multiple places This requires processing data before it is queried - NOT at the query time All data can be cached Some data can be cached: Frequently used Process Heavy, Expensive data Build as you Go

55 55 Microsoft Confidential Distributed Caching Simple to administer No need to manage and host a distributed cache yourself. Integrates easily into existing applications ASP.NET session state and output cache providers enable no-code integration. Same managed interfaces as Windows Server AppFabric Cache On-Premises App Windows Azure App AppFabric Cache APIs Windows Server AppFabric Cache AppFabric Cache APIs Windows Azure AppFabric Caching

56

57

58 01100100 01100001 01110100 01100001

59

60 pic1.jpg Content Delivery Network Blob Service Edge Location pic1.jpg


Download ppt "Mark Simms Principal Program Manager Windows Azure Customer Advisory Team."

Similar presentations


Ads by Google