Archives For Caching


download Today I came across the ConfigStoreException. My Worker Roles were constantly being recycled by Windows Azure and I wasn’t able to use the remote debugger to get at any information. (Using Windows Azure SDK 2.2)

To be fair, the Worker Roles ran fine on my local Windows Azure Emulator. As you can imagine, I was completely baffled by all this… So I decided to check if Windows Azure Diagnostics was able to log anything. Fortunately, I was able to get two exceptions. (The exceptions were found in the WADWindowsEventLogsTable located in the Windows Azure Storage Account used for your Windows Azure Diagnostics)

Continue Reading…


9-4-2013 2-08-24 AMWhat is it?

Windows Azure Cache is a distributed, in-memory, scalable solution that can be used to build highly scalable and responsive applications by providing super-fast access to data. A cache created using the Cache Service is accessible from applications within Windows Azure running on Windows Azure Web Sites, Web & Worker Roles and Virtual Machines.

Why is it Important?

On September 3rd 2013, Microsoft announced a new Windows Azure Cache Service. This is actually quite interesting for projects that requires a Highly Available (HA) Cache. It allows you to create a Cache Cluster using the management portal. This means that all infrastructure maintenance and resource management is Microsoft’s responsibility.

Continue Reading…


imagesZHI8BPW2Azure is an amazing platform to work with! It creates interesting possibilities by offering a wide range of services that can be leveraged in order to produce exceptional end-user experiences.

Azure is built on commodity hardware and allows you to build elastic services that scale out in order to maintain a constant end-user experience. This is especially interesting when you want to start small and grow according to the demand for your services.

Enchanting as this may be, this is where many projects go wrong. Everything on the cloud has a price. On the cloud details matter! So choose the right architecture and be very cautious about the resources your application consumes.

Continue Reading…


In 2010 I bought a Kindle and it changed my life! Since then I’ve been catching up on books I should have read years ago. Back then, reading technical books meant carrying bulky/ heavy printed books in my bag. The day I got my first kindle, is the day I started reading again!

Since then, I read quite a few books! Below are some of the books that got me hooked on Windows Azure!

Continue Reading…


Caching with Entity Framework has always been a challenge. Out of the box Entity Framework doesn’t have second level caching support. Even though, many open source solutions like the Scalable Object Persistence (SOP) Framework exist, I decided to implement a query level cache that uses the Transient Fault Handling Application Block to execute retry policies to transparently handle transient faults.

Keep in mind that transient faults are normal and that its not a question of if they will occur, it’s really a question of when they will occur. SQL Database instances are continuously being shifted around to prevent the service’s performance from degrading.

The Database fluent API I created executes reusable queries. Reusable queries greatly simplify the application’s design by encapsulating query logic in named concepts. They are like Stored Procedures in SQL Server, where team members can discover functionality by reading file names from the query folders. More details about reusable queries can be found in the reference section at the bottom of this post.

ClientCacheDiagram

The code from this Post is part of the Brisebois.WindowsAzure NuGet Package

To install Brisebois.WindowsAzure, run the following command in the Package Manager Console

PM> Install-Package Brisebois.WindowsAzure

Get more details about the Nuget Package.

Continue Reading…


download

Windows Azure Table Storage Service can be queried using various approaches. I use the Windows Azure Storage NuGet package and reusable queries.

A Query on Windows Azure Table Storage Service usually completes in 200 milliseconds. On busy systems this is an eternity! To help my services perform better, and to reduce costs of operation, I built the TableStorageReader to executes queries with cache, in turn reducing the number of transactions and reducing the latencies created by communications over the network.

The reader executes reusable queries. Reusable queries greatly simplify the application’s design by encapsulating query logic in named concepts. They are like Stored Procedures in SQL Server, where team members can discover functionality by reading file names from the query folders. More details about reusable queries in the reference section at the bottom of this post.

The TableStorageReader is a fluent api that allows you to create tables, query tables and apply cache over queries.

The code from this Post is part of the Brisebois.WindowsAzure NuGet Package

To install Brisebois.WindowsAzure, run the following command in the Package Manager Console

PM> Install-Package Brisebois.WindowsAzure

Get more details about the Nuget Package.

Continue Reading…


A simple filter bringing caching options, similar to MVC’s "OutputCacheAttribute" to Web API ApiControllers. This code was inspired by Filip W’s aspnetwebapi-outputcache. I found his blog post and started playing around with his code. I rapidly found myself asking for more flexibility and for a different behavior. I needed to cache my service responses until a specific moment in time. In my case, I need to cache until 17h45 every day.

Get the code @ https://github.com/brisebois/aspnetwebapi-outputcache

This code has been pulled into filipw / AspNetWebApi-OutputCache and is available through Nuget, run the following command in the Package Manager Console.

PM> Install-Package Strathweb.CacheOutput -Pre

Continue Reading…


Getting more bang for your buck from a Windows Azure solution can be achieved by paying attention to implementation details.

Continue Reading…