Windows Azure Guidance – Additional notes on failure recovery on Windows Azure

Things will eventually fail in your application and you need to be prepared. So most components should be designed for something going wrong and recover gracefully (or as gracefully as possible) and leaving the system in a consistent state (eventually in some cases). In this post I wrote about dealing with data consistency when interacting…

1

Windows Azure Guidance – New Code & Doc drop on CodePlex

We are almost content complete for our first Windows Azure Architecture Guide (the most probable name for our book). Available for download today: New updated samples, including all file processing and background tasks (lot’s of small nuggets in there, such as use of multiple tasks in a single Worker, continuation tokens, data model optimization, etc)….

4

Windows Azure Guidance – Background Processing III (creating files for another system)

Last week Scott walked me through his current design for the “Integration Service” in our sample. Here’s some preview of this early thinking. As a reminder, our fictitious scenario has a process that runs every once in a while and generates flat files for some other system to process: it simply scans the database for…

1

Windows Azure Guidance – Background processing II – One worker, two workers, …

Question for you: if your application has 2 “background” task to perform, do you implement this as 2 distinct workers? or as 1 worker with 2 responsibilities? Option 1 is straight forward. Option 2 requires more work, but … does it make sense? It turns out that it does make sense. In some cases it…

3

Windows Azure Guidance – Development Process

One frequent question we get is around “process guidance”. Also known by the more modern and fancy acronym “ALM”: Application Lifecycle Management, which replaced the old SDLC term, which in turn (and only if you are old enough like me) meant something completely different, but I digress…. Application lifecycle management on Windows Azure has some…

1

Windows Azure Guidance – Replacing the data tier with Azure Table Storage

This new release focuses primarily on replacing the data tier with Azure Table Storage. To make things more interesting, we changed the data model in a-Expense so it now requires two different related entities: the expense report “header” (or master) and the details (or line items) associated with it. The implementation of this on SQL…

1

Windows Azure Guidance – First version of a-Expense in the cloud

Available for download here, you’ll find the first step in taking a-Expense to Windows Azure. Highlights of this release are: Use of SQL Azure as the backend store for application entities (e.g. expense reports) Uses Azure storage for user profile information (the “Reimbursement method” user preference) Application no longer queries AD for user attributes needed…

0

Windows Azure Guidance – a-Expense “before” on CodePlex

First build of our samples is now available on CodePlex. This initial version is the “before the cloud” baseline application, so you won’t find anything related to Windows Azure here. This week we will take this simple baseline and start moving it to the cloud. Goals for this next iteration are to: Claims-enable the application…

2

Windows Azure Guidance – Scenario – Part II

In this post, we’ll examine the application Adatum is considering migrating to the cloud as a proof point for their assumptions. Adatum’s a-Expense a-Expense is one application in Adatum’s finance support systems that helps them submit, track and process business expenses. Everyone in Adatum is required to use this application for requesting reimbursements. a-Expense is…

0

Windows Azure Guidance – Scenario background – Part I

Here’s the “fiction non-fiction” (I love that term :-)) that will become the backdrop for our initial scenario. Adatum Business overview Adatum is a 5000 employee manufacturing company with a large portfolio of applications. Their criticality ranges from “peripheral” to “mission critical”, with lots of “in between. A significant portion of IT budget in Adatum…

0