Owner with 51-200 employees
Windows Azure Basics–Compute Emulator
Following the first two posts of the series “Windows Azure Basics” (general terms, networking) here comes another one. Interestingly enough, I find that a lot of people are confused what exactly is the compute emulator and what are these strange IP Addresses and port numbers that we see in the browser when launching a local deployment.
If you haven’t read the Windows Azure Basics – part 2 Networking, I strongly advise you to do so, as rest of current post assumes you are well familiar with real Azure deployment networking components.
A real world Windows Azure deployment has following important components:
- Public facing IP Address (VIP)
- Load Balancer (LB) with Round Robin routing algorithm
- Number of Virtual Machines (VM) representing each instance of each role, each with its own internal IP address (DIP – Direct IP Address)
- Open ports on the VIP
- Open ports on each VM
In order to provide developers with as close to real world as possible, a compute emulator needs to simulate all of these components. So let's take a look what happens when we launch locally a Cloud Service (a.k.a. Hosted Service).
VIP Address
The VIP address for our cloud service will be 127.0.0.1. That is the public IP Address (VIP) of the service, via which all requests to the service shall be routed.
Load Balancer
Next thing to simulate is the Azure Load Balancer. There is a small software emulated Load Balancer, part of the Compute Emulator. You will not see it, you are not able to configure it, but you must be aware of its presence. It binds to the VIP (127.0.0.1). Now the trickiest thing is to find the appropriate ports to bind. You can configure different Endpoint for each of your roles. Only the Input Endpoints are exposed to the world, so only these will be bound to the local VIP (127.0.0.1). If you have a web role, the default web port is 80. However, very often this socket (127.0.0.1:80) is already occupied on a typical web development machine. So, the compute emulator tries to bind to the next available port, which is 81. In most of the cases port 81 will be free, so the "public" address for viewing/debugging will be https://127.0.0.1:81/. If port 81 is also occupied, compute emulator will try the next one – 82, and so on, until it successfully binds to the socket (127.0.0.1:XX). So when we launch a cloud service project with a web role we will very often see browser opening this wired address (https://127.0.0.1:81). The process is same for all Input Endpoints of the cloud service. Remember, the Input endpoints are unique per service, so an Input Endpoint cannot be shared by more than one Role within the same cloud service.
Now that we have the load balancer launched and bound to the correct sockets, let's see how the Compute Emulator emulated multiple instances of a Role.
Web Role
Web Roles are web applications that run within IIS. For the web roles, compute emulator uses IIS Express (and can be configured to use full IIS if it is installed on the developer machine). Compute Emulator will create a dedicated virtual IP Address on the local machine for each instance of a role. These are the DIPs of the web role. A local DIP looks something like 127.255.0.0. Each local "instance" then gets the next IP address (i.e. 127.255.0.0, 127.255.0.1, 127.255.0.2 and so on). It is interesting that the IP Addresses begin at 0 (127.255.0.0). Then it will create a separate web site in IIS Express (local IIS) binding it to the created Virtual IP Address and port 82. The emulated load balancer will then use round robin to route all requests coming to 127.0.0.1:81 to these virtual IP Addresses.
Note: You will not see the DIP virtual address when you run ipconfig command.
Here is how does my IIS Express look like when I have my cloud service launched locally:

Worker role
This one is easier. The DIP Addressing is the same, however the compute emulator does not need IIS (neither IIS Express). It just launches the worker role code in separate processes, one for each instance of the worker role.
The emulator UI
When you launch a local deployment, Compute Emulator and Storage Emulator are launched. You can bring the Compute Emulator UI by right clicking on the small azure colored windows icon in the tray area:

For purpose of this post I've created a sample Cloud Service with a Web Role (2 instances) and a Worker Role (3 instances). Here is the Compute Emulator UI for my service. And if I click on "Service Details" I will see the "public" addresses for my service:

Known issues
One very common issue is the so-called port walking. As I already described, the compute emulator tries to bind to the requested port. If that port isn't available, it tries next one and so on. This behavior is known as "port walking". Under certain conditions we may see port walking even between consequent runs of same service – i.e. the first run compute emulator binds to 127.0.0.1:81, the next run it binds to 127.0.0.1:82. The reasons vary, but the obvious one is "port is busy by another process". Sometimes the Windows OS does not free up the port fast enough, so port 81 seems busy to the compute emulator. It then goes for the next port. So, don't be surprised, if you see different ports when debugging your cloud service. It is normal.
Another issue is that sometimes browser launches the DIP Address (https://127.255.0.X:82/) instead the VIP one (https://127.0.0.1:81/). I haven't been able to find a pattern for that behavior, but if you see a DIP when you debug your web roles, switch manually to the VIP. It is important to always use our service via the VIP address, because this way we also test out application cloud readiness (distributing calls amongst all instances, instead of just one). If the problem persists, try restarting Visual Studio, Compute Emulator or the computer itself. If issue still persists, open a question at StackOverflow or the MSDN Forum describing the exact configuration you have, ideally providing a Visual Studio solution that constantly reproduces the problem. I will also be interested to see the constant repeatable issue.
Tip for the post: If you want to change the development VIP address ranges (so that it does not use 127.0.0.1) you can check out the following file:
%ProgramFiles%\Microsoft SDKs\Windows Azure\Emulator\devfabric\DevFC.exe.config
DevFC stands for "Development Fabric Controller". But, please be careful with what you do with this file. Always make a backup of the original configuration before you change any setting!
Happy Azure coding!
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
Owner at a tech consulting company with 51-200 employees
Easy to connect to on-premise infrastructure, but deprovisioning services is complicated and SLA is not competitive
Valuable Features:
SSO access
Easy connect to On-Prem infrastructure
GA of new features, such as Azure Backup and Mobile services, free websites and easy to manage pay-as-you-go model.
Room for Improvement:
Deprovisioning services is complicated. SLA is not competitive. While some prices have been lowered, some increased after GA. Options from beta moved to different categories.
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
Buyer's Guide
Microsoft Azure
December 2025
Learn what your peers think about Microsoft Azure. Get advice and tips from experienced pros sharing their opinions. Updated: December 2025.
879,310 professionals have used our research since 2012.
Sr System Engineer at a outsourcing company with 501-1,000 employees
We moved our accounting database from an in-house SQL Server to MS Azure cloud and saw a significant increase in performance.
Valuable Features:
High availability rate anywherem, anytime.
Periodic workloads options let me pay only for the time I have used it.
It is easy to backup database via BCP program or tools available on codeplex site.
It supports multiple languages such as Java, .NET, Ruby and PHP.
Room for Improvement:
Needs fast Internet connectivity.
Fear of being data being hacked or captured.
Other Advice:
We moved our accounting database from an in-house SQL Server to MS Azure cloud and saw a significant increase in performance.
We can now connect to the database even while roaming and back it up anywhere, anytime.
Data replication services make it highly reliable and always available.
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
Head of Infrastructure at a tech company with 51-200 employees
Good for running Microsoft Enterprise Applications, although a pricey alternative to other IaaS/Paas service providers in the market.
Valuable Features:
1) Windows Azure supports ASP.NET and Node.js, among other platforms.
2) Due to the Node.js supported library, Azure is capable of supporting the Map Reduce Infrastructure, Hadoop, for distributed data processing and number processing.
3) With the help of AppFabric Internet services, it can support Java, Ruby, etc.
4) Since the underlying Azure OS runs on Windows Server 2008 edition, it supports running all Microsoft Enterprise Applications, hosting services like IIS and many more.
5) Using Windows Azure Connect, various Virtual Machines can be easily connected with each other
6) Has support for multiple users & roles for management purposes.
Room for Improvement:
1) It is a well known fact that Microsoft has yet to upgrade its IaaS technologies for providing a near zero interruption triggered by Load balancers.
2) Physical security of data is a major concern for various IaaS service providers, and Azure is no different.
3) Though having data served from multiple data centers improves performance, it has increased the risk of data security.
4) Compared to other IaaS service providers out there in the market, Azure is a bit expensive.
Other Advice:
It's true that to run various Microsoft Enterprise Solutions, Azure is the best option, keeping aside minor caveats. Unless your requirement makes it mandatory to use IIS, you should consider other IaaS service providers available in the market, which are comparatively cheaper as well. It has good support for various platforms like Java, Ruby, and PHP for websites. Windows Azure provides API's built on popular and robust technology like HTML, REST, and XML.
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
Is it possible to use Azure with other non-Microsoft enterprise solutions or are there compatibility issues? In case it is not possible, which other alternative can you recommend to SME businesses that are looking for a cheaper alternative with almost similar capabilities of Azure if not completely the same or even better?
Senior Manager of Data Center at a integrator with 51-200 employees
Microsoft's cloud computing platform Windows Azure is a combination of both PaaS and IaaS
Valuable Features:
The pros of using Windows Azure are-
1) Windows Azure Virtual Network which enables virtual private network creation for enterprise usage
2) Support for Python, PHP, JAVA, .NET
3) More focus on application deployment, rather than infrastructure
4) Provides an application interface built on REST, HTTP, and XML
5) Content Delivery Network
Room for Improvement:
Few cons on Azure are-
1) Poor debugging and logging management for applications
2) Increased competition for development resources
3) Pricing
4) load balancing causes interruption in many of the stateful applications
Other Advice:
Windows Azure is a cloud computing platform from Microsoft for running windows applications and working with data on the cloud. It is based on the architecture of HyperV and windows fail over clustering to support redundant instances of application with zero downtime. It's built to quickly deploy application with .NET, JAVA, SQL, Python, and other cloud services. It works on the combination of SQL, azure, and AppFabric, along with other cloud services.
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
Director of IT at a tech company with 51-200 employees
Windows Azure is classified as platform, as a service, and forms part of Microsoft's cloud computing strategy, along with its software as a service offering Microsoft Online Services
Valuable Features:
-Windows Azure is available in multiple data centers around the world, enabling you to deploy your applications close to your customers.
- Its enables you to use any language, framework, or tool to build applications. Features and services are exposed using open REST protocols.
-Windows Azure’s distributed caching and CDN services, allow you to reduce latency and deliver great application performance anywhere in the world.
-Giving power back to the users to concentrate on the application and take away all their worries from the hosting and provisioning point of view.
Room for Improvement:
-Systems mirroring is currently not available within Azure, unlike Amazon Web Services.
-Lose account control to MS.
-MS has calibrations to compute how much you used them, and how you plan to validate it.
Other Advice:
The Windows Azure platform, which provides a range of functionality to build applications that span from consumer web to enterprise scenarios, includes a cloud service operating system and a set of developer services. With Windows Azure there are at least two instances of each role that the application needs and therefore, the Fabric controller load balances users’ requests between them. What this means is that there is no guarantee two requests from the same user will go to the same instance. This may be a problem with some applications that need a stateful connection with the user. A stateful connection is one in which some information about a connection between two systems is retained for future use.
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
I agree with your pros, and as other pro I would add that the only need is to deploy the application, because all the rest is Microsoft managed, the user has no worry about the windows patching and updates, server running out of space, technical troubleshooting and maintenance cost, and time saved in building up the servers.
As a con, I would say that only windows centric applications are supported by Microsoft for technical assistance, so if there is an error it could be difficult to determine where is from.
Engineer at a manufacturing company with 51-200 employees
Microsoft Azure is best cloud computing platform available in the market.
Valuable Features:
Yet another powerful and reliable product from Microsoft. Windows Azure is a very reliable cloud computing platform, coupled with Microsoft data centers. More positives are that it can be used with non-Microsoft based data centers. It is fast and secure.
It stands first among all other cloud platform providers.
Room for Improvement:
Microsoft is not an innovator for this cloud computing platform. Still some of its products, like Dynamics GP 2013 online, are not compatible with iPad, iPhone, and some Android based devices.
Other Advice:
I love Microsoft's products because they are simple yet powerful and secure.
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
Architect DevSecOps at a tech services company with 1,001-5,000 employees
Simple to use and reliable
Pros and Cons
- "The most valuable feature of Microsoft Azure is its ease of use."
- "Microsoft Azure could improve by being more secure."
What is our primary use case?
We used Microsoft Azure mainly for repositories and management.
What is most valuable?
The most valuable feature of Microsoft Azure is its ease of use.
What needs improvement?
Microsoft Azure could improve by being more secure.
For how long have I used the solution?
I have been using Microsoft Azure for approximately two years.
What do I think about the stability of the solution?
Microsoft Azure is a stable solution.
What do I think about the scalability of the solution?
The company that I am working for had 100 users using Microsoft Azure.
What about the implementation team?
I did not implement the solution myself, another team in my company did it.
What other advice do I have?
I would recommend Microsoft Azure to others, it is a good solution.
I rate Microsoft Azure a nine out of ten.
Which deployment model are you using for this solution?
On-premises
Disclosure: My company does not have a business relationship with this vendor other than being a customer.
Buyer's Guide
Download our free Microsoft Azure Report and get advice and tips from experienced pros
sharing their opinions.
Updated: December 2025
Popular Comparisons
Amazon AWS
Red Hat OpenShift
Akamai Connected Cloud (Linode)
Oracle Cloud Infrastructure (OCI)
VMware Tanzu Platform
Google Cloud
Salesforce Platform
Alibaba Cloud
SAP Cloud Platform
Pivotal Cloud Foundry
VMware Cloud Foundation
Google Firebase
Nutanix Cloud Clusters (NC2)
IBM Public Cloud
SAP S4HANA on AWS
Buyer's Guide
Download our free Microsoft Azure Report and get advice and tips from experienced pros
sharing their opinions.
Quick Links
Learn More: Questions:
- Gartner's Magic Quadrant for IaaS maintains Amazon Web Service at the top of the Leaders quadrant. Do you agree?
- PaaS solutions: Areas for improvement?
- Rackspace, Dimension Data, and others that were in last year's Challenger quadrant became Niche Players: Agree/ Disagree
- What Is The Biggest Difference Between Microsoft Azure and Oracle Cloud Platform?
- Which backup and recovery solution can backup Azure machines to its own (dedicated) cloud?
- Which is better - SAP Cloud Platform or Microsoft Azure?
- Which solution do you prefer: Alibaba Cloud or Microsoft Azure?
- How does Microsoft MDS (vs Informatica MDM) fit with Azure architecture?
- SAP HANA Enterprise Cloud (HEC): how to migrate to Microsoft Azure?
- Does F5 Advanced WAF work with Azure App Service?















SQL Azure is a service, and even it is pretty much the same as a SQL 2012/2014 server, you have to take in mind some considerations that can affect your application or your intentions on what use you will give to the SQL Engine. You can find links on the web that show the basic differences between SQL Server and SQL azure. The principal caveats is the way you can interact with the SQL Azure service and the SQL Transact commands that you can work with at an administrator level. You are limited on this commands and the things that you can accomplish. Also, there are some functionality (like temporary tables) or field types that do not work or exist on SQL Azure.
Also there is a limit on the number of transactions per second that you can realize, it is called throttling, you have to keep in mind that if you expect to do a great amount of transactions per second, SQL Azure could not be the service that you need.
There is also limits on the DB size that SQL Azure can handle. I think that right know this limit is set on 150GB. You can work around this limitation with DB federation, but requires some additional work on your queries side.
For a regular database operations and maintenance, it will fit well. It is a perfect integration for PAAS solutions.