I’ve experience the above plenty of times – hit F5, wait for your projects to build then sit back and enjoy anywhere from a minute to five minutes of peaceful reflection while the Azure emulator gets up to speed.
After some playing with procmon I discovered that the vast majority of activity in those interminable minutes could be put into three broad buckets:
- Logging to DFAgent.log, sometimes tens of times a second (something I’m seriously considering symlinking to NUL, or at the very least a ramdisk)
- Various things to do with installing the Windows Azure Cache Emulator
- Lots of communications with ‘something cloudy’ at 168.63.0.*
Troubles seemed to start with the install of the 1.8 SDK, but in fact appear now to be linked to whether or not ‘Enable Caching’ is turned on in the cloud role properties:
Some timings from my machine on a particularly large solution, from ‘Starting emulator’ to a usable deployment:
- Enable Caching ‘On’: ~3 minutes average
- Enable Caching ‘Off’: ~15 seconds average
This is a bugger though, as you can’t have cloud-configuration-specific settings for your caching – it’s either globally on or globally off. In addition, without caching enabled anything that attempts to use it will fail with an exception (fine, if those classes fall back to a null cache implementation). So – for my purposes, my local development environment setup changes from:
- Caching enabled
- Use Azure caching for session state management
to a new cloud project specifically for development with:
- Caching disabled
- Use the Session State service for session state management (configured in web.config) and web.config transforms to convert to Azure Caching session state management for deployment
And my F5 experience goes from three to five minutes down to 15-20 seconds. Not ideal, as I’ve taken my development environment another step further away from my deployment environment, but from a productivity point of view it’s a no-brainer.
Have yet to diagnose why installing the Windows Azure Cloud Cache components as happens during a development run is so costly – more investigation required…








