In early March I reviewed the AWS Mobile SDK, Google Firebase, and Microsoft Azure Mobile Services, the mobile back-end service offerings of the three major public clouds. The Microsoft option was a pleasant surprise. I was struck by Microsoft's thoughtful implementation of mobile services and the respect with which the Azure Mobile Services team addressed the needs of app developers without imposing on the choice of solution; thus, we awarded it an Editor's Choice.
Apparently Microsoft has a "full employment for freelance reviewers covering Azure" policy, because the company has already introduced a new level of back-end integration for Web and mobile services. Azure App Service, a managed service currently in preview, integrates the Microsoft Azure Websites, Mobile Services, and BizTalk Services into a single service, and it adds new capabilities enabling integration with on-premises or cloud systems. It includes the tools and services needed to build four app types: Web Apps, Mobile Apps, API Apps, and Logic Apps (Figure 1). I'll explain each of them below.
App Service pricing varies from free to about $300 per app instance per month. The less expensive service tiers have fewer maximum instances, manual scaling, less storage, less RAM, and fewer cores. If you have a higher tier that allows multiple instances, you can easily enable and control autoscaling (Figure 2). You can change the tier of any service at any time. Note that turning off a service does not keep it from accruing charges, although reducing it to a free tier may if your data storage is less than 1GB. Deleting a service will certainly stop the meter.
Azure SQL Server database pricing varies with the size and power of the database and ranges from about $5 per month to around $3,720 per month. Performance levels are expressed in DTUs (database throughput units), a new blended measure of CPU, memory, and read and write rates. The lowest level now available is 5 DTUs, and the highest is either 800 or 1000 DTUs, depending on which documentation you believe. The highest-tier database can perform approximately 735 transactions per second, store 500GB, and handle 1,600 concurrent requests. If you need a bigger database, you can run SQL Server in an Azure VM or run it on-premise and connect to it from your Azure app services.
Azure Web App Services
Web App Services are basically renamed Azure Websites. As before, they support .Net, Node.js, PHP, Python, and Java. You can autoscale them, manage their traffic geographically, include multiple SNIs per IP address, and set them up for continuous integration, with multiple staging slots (for testing before promotion to production and for fallback if a bug is found in production). Web App Services can host WebJobs (discussed below) and have automatic backups at a frequency that depends on the tier. (See the left-hand side of Figure 2.) The management of all of this is a little easier in the new Azure portal.
Sign up for CIO Asia eNewsletters.