Presentation is loading. Please wait.

Presentation is loading. Please wait.

Web Role Worker Role Storage Queue LBLB LBLB LBLB LBLB Worker Role Web Role Worker Role Blob Container Table 1.User uploads large image file 2.Image.

Similar presentations


Presentation on theme: "Web Role Worker Role Storage Queue LBLB LBLB LBLB LBLB Worker Role Web Role Worker Role Blob Container Table 1.User uploads large image file 2.Image."— Presentation transcript:

1

2

3

4

5

6 Web Role Worker Role Storage Queue LBLB LBLB LBLB LBLB Worker Role Web Role Worker Role Blob Container Table 1.User uploads large image file 2.Image inserted into blog storage 3.Message placed on queue incl BLOB URI and metadata 4.Worker role is polling queue. Reads message from queue 5.Worker role processes message, reads from BLOB storage, generates thumbnail 6.Thumbnail and metadata stored in Table storage 7.Message deleted from queue

7

8 Web Role Worker Role Storage Queue LBLB LBLB LBLB LBLB Worker Role Web Role Worker Role 1.Debit bank account $100 message 2.Worker role reads message 3.Balance debited $100 4.Worker role is torn before message can be deleted 5.3 minutes later, message re-appears on queue 6.Worker role reads message 7.Balance debited $100 8.Message deleted from queue 9.Chaos ensues..... 10.Customer calls bank..... Balance = $1000Balance = $900Balance = $800

9 Web Role Worker Role Storage Queue LBLB LBLB LBLB LBLB Worker Role Web Role Worker Role 1.Debit bank account $100 message with transaction ID 2.Worker role reads message. Checks transaction ID not present. 3.Writes transaction ID with state ‘Started’ to ‘Replay Log’ 4.Balance debited $100 5.Worker role is torn before message can be deleted 6.3 minutes later, message re-appears on queue 7.Worker role reads message. Checks transaction ID. It is present in state started. 8.Compensating message written to another queue 9.Message deleted from queue 10.Compensatory message processed. Balance = $1000Balance = $900 Table Query Queue

10

11

12

13 string-message-id insertion-time expiration-time opaque-string-receipt-data time-next-visible integer message-body

14

15

16

17

18 1.User uploads large image file 2.Image inserted into blog storage 3.Message placed on queue incl BLOB URI and metadata such as image type 4.Worker role is polling queue. Reads message from queue 5.Worker role parses message. Pulls appropriate type from blob storage 6.Worker dynamically loads type into new AppDomain, dynamically invokes type 7.Code reads image from BLOB storage, generates thumbnail 8.Thumbnail and metadata stored in Table storage 9.Message deleted from queue Web Role Worker Role Storage Queue LBLB LBLB LBLB LBLB Worker Role Web Role Worker Role Blob Container Table 30mb JPEG

19

20

21

22

23

24

25


Download ppt "Web Role Worker Role Storage Queue LBLB LBLB LBLB LBLB Worker Role Web Role Worker Role Blob Container Table 1.User uploads large image file 2.Image."

Similar presentations


Ads by Google