Introduction to Azure App Service
Overview
Recently Microsoft began focusing on a strategy based on the motto "Mobile First, Cloud First," which means working hard on mobile and cloud areas—a main focus for many companies nowadays. Azure Websites, Azure Mobile Services, and other Azure services already provided all the resources needed to create great apps. But an experienced developer could see that, for example, an Azure Mobile Service was no more than an Azure Website with additional features focusing on mobile applications, and developers might find limitations in this service.
In Azure Mobile Services, whether you want to create a website or just a few web pages (for example, to recover lost passwords or confirm an email address), an Azure Website is required. With that restriction, some developers might wonder why an Azure Website is needed in order to have a few web pages, when Azure Mobile Services is an ASP.Net website. In this case, two different services are needed (Azure Mobile Service and Azure Websites), which means additional costs for clients and more time expended on maintenance.
With the goal of providing the best service solution for its clients, Microsoft has been improving Microsoft Azure. With the addition of Azure App Service, Azure now provides a new level of back-end integration for web and mobile services.
What Is Azure App Service?
Azure App Service is a fully managed "Platform as a Service" (PaaS) that integrates Microsoft Azure Websites, Mobile Services, and BizTalk Services into a single service, adding new capabilities that enable integration with on-premises or cloud systems. Azure App Service gives users several capabilities (see Figure 1):
- Provision and deploy Web and Mobile Apps in seconds
- Build engaging iOS, Android, and Windows apps
- Automate business processes with a visual design experience
- Integrate with "Software as a Service" (SaaS) applications (Office 365, Salesforce, Dynamics, OneDrive, Box, Dropbox, Twilio, Twitter, Facebook, Marketo, and so on) and on-premises applications
Figure 1 Types of applications available from Azure App Service. (Images courtesy of Microsoft.)
This improvement provides all the tools and services users will need to create Web Apps, Mobile Apps, API Apps, and Logic Apps in a single instance, which reduces costs for clients because all of these features can be used together at a lower price than paying individually for each service. In fact, this new service is the same price as Azure Websites used to be, with the plus of having new features provided by new mobile support, new workflow support, and new connectors to dozens of SaaS and on-premises solutions. It also provides powerful capabilities such as built-in development operations, continuous integration with Visual Studio Online and GitHub, staging and production support, and automatic patching.
In the Azure portal, you can customize the Azure App Service. Click New > Web + Mobile to choose the features you want from the Azure App Service (see Figure 2).
Figure 2 Azure App Service in the Azure portal.
Web Apps
As provided by Azure App Service, Web Apps is a fully managed platform that enables you to build, deploy, and scale enterprise-grade Web Apps in seconds. These are the main features:
- .NET, Java, PHP, Node.js, Python
- Built-in autoscale and load balancing
- High availability with auto-patching
- Continuous deployment with Git, TFS, GitHub
- Deployment slots, testing in production, WebJobs and continuous integration
- Web Apps Gallery: WordPress, Umbraco, Joomla, Drupal
These are nothing more than the previous Azure Websites services, which is why the Azure Websites deployed to Azure are now called "Web Apps," and it's possible to run these apps as before. It also can host WebJobs as before, with automatic backup frequency dependent on the tier selected by the client.
Creating a New Web App
To create a new Web App, go to the Azure portal and click New > Web + Mobile > Web App, as shown in Figure 3.
Figure 3 Creating a Web App.
Web Apps in the Azure Marketplace
In the Azure Marketplace, you can choose different products for use in Web Apps. To see that list, in the Azure portal, choose the Marketplace at the bottom of the screen and select Web Apps, as shown in Figure 4.
Figure 4 Products for Web Apps.
Mobile Apps
Provided by Azure App Service, Mobile Apps are a rich set of back-end capabilities for native Windows, iOS, and Android mobile platforms, as well as multi-platform environments such as Xamarin and Cordova. The following list shows the main features and improvements:
- Built-in autoscale support (automatically scale up/down based on real-world load)
- Broadcast push with customer segmentation
- Make your app work offline and sync
- Social integration with Facebook, Twitter, Google
- Traffic manager support (geographically scales apps around the world)
- Continuous integration/deployment support with Visual Studio Online, GitHub, and Bitbucket
- Virtual networking support and hybrid connections to on-premises databases
- Staged deployment and test in production support
- WebJobs support for long-running background tasks
This feature offers a highly scalable, globally available mobile application-development platform for enterprise developers and systems integrators.
Creating a New Mobile App
To create a new Mobile App, go to the Azure portal, click New > Web + Mobile > Mobile App, as shown in Figure 5.
Figure 5 Creating a Mobile App.
Mobile Apps in the Azure Marketplace
In the Azure Marketplace, you can choose different products to be used in Mobile Apps. To see that list, in the Azure portal, choose the Marketplace and then select Mobile Apps, as shown in Figure 6.
Figure 6 Products for Mobile Apps.
Logic Apps
Logic Apps provided by Azure App Service offer the ability to any user (technical or not) to automate process execution across popular consumer and commercial services, as well as custom APIs on-premises. This service includes the advanced set of Azure BizTalk service capabilities for even the most advanced enterprise integration scenarios. Following are the main features:
- Visually create business processes and workflows
- Deliver integration capabilities in Web, Mobile, and API Apps
- Integrate with your SaaS and enterprise applications
- Automate EAI/B2B and business process
- Connect to on-premises data
Currently many connectors can be used in Logic Apps, separated into two main categories: Standard Connectors and Premium Connectors.
Creating a New Logic App
To create a new Logic App, go to the Azure portal, click New > Web + Mobile > Logic App as shown in Figure 7.
Figure 7 Creating a Logic App.
API Apps
API Apps provided by Azure App Service offer a rich platform and ecosystem for building, consuming, and distributing APIs in the cloud and on-premises. The main features provided are as follows:
- Integrate with SaaS and enterprise applications
- Generate client proxies or APIs in your language of choice
- Automate versioning and deployment of API Apps
- Secure APIs with Active Directory, Single Sign-On, and OAuth
- Share APIs internally with organizational gallery
The API Apps enhance the experience of developing, deploying, publishing, consuming, managing, and monetizing RESTful Web APIs. Current APIs can take advantage of the API Apps platform with no changes; it can connect to Azure Active Directory, it allows easy connection to SaaS platforms, and it can be consumed by Logic Apps.
Creating a New API App
To create a new API App, go to the Azure portal and click New > Web + Mobile > API App, as shown in Figure 8.
Figure 8 Creating an API App.
API Apps in the Azure Marketplace
In the Azure Marketplace, you can choose different products to be used in API Apps. To see that list, in the Azure portal, choose the Marketplace and then select API Apps, as shown in Figure 9.
Figure 9 Products for API Apps.
References
Find more information about this subject in the following references: