Azure App Services Features

Azure App Services Features

In last post we have seen about azure app services introduction and benefits, in this lets see the?azure app services?features.

How App Service runs on App Service Plan

One of key benefits for azure app services or any PaaS services are auto/scale up and down. In this will see how azure handles the scale up and domain. In azure it use Service Fabric to handles it. You might have heard Service Fabric powers a lot of services in Azure, including App Service.

For instance, when you have a Web App that is running a website, Service Fabric makes sure that it runs on a VM, in a Microsoft datacenter. And if that VM fails, or if the underlying hardware fails, Service Fabric moves the Web App to another VM and/or physical server, so that it continues to run. Service Fabric also takes care of scaling for you. When you scale your Web App, by, for instance scaling it out over multiple instances, Service Fabric replicates your Web App over multiple VMs and keeps those running. This is the magic of cloud and this is what makes it so easy for you to run something like a Web App. In azure, Service Fabric takes care of all of this. We no need to worry about the uptime and availabilities, once it is deployed it will keep running, until there is some misconfiguration done manually.

The VMs that Service Fabric uses, are the actual things that your App Service runs on. And you can choose what type of VM Azure should use to run your App Service. You do this by configuring the App Service Plan.

An App Service Plan is the logical abstraction that represents one or more VMs that your App Service runs on. It is a representation of compute resources, like CPU, memory, and disk space.

Deployment features

One of the major feature we should know or discuss in deployment, as this is critical to maintain the the application uptime and availability. Please note, some features wont available when you use functions apps with Serviceless option.

Deployment slots

The deployment slots feature is one of the features that adds a lot of value with little work. A deployment slot is a fully functioning App Service, like a Web App, that runs next to your original Web App. You can use a deployment slot to deploy a new version of your application in and test it. And the best of this feature is that you can swap a deployment slot into production with zero downtime. This means that you can deploy the new version of your application to production without having any downtime.

Deployment slots – testing in production

When you have one or more deployment slots, you can use them to test in production. You can configure if and how much traffic you want to be routed to each of your deployment slots. For instance, you could route 10% to your staging slot and the rest (90%) to your production Web App. 10% of your users will be sent to the deployment slots and those users get to test your new features.

Deployment Center

You can use the deployment center feature to connect a code repository to your Web App and have that code built and deployed whenever it is updated. So, the deployment center enables you to implement Continuous Integration (build every time code is checked in) and Continuous Deployment (deploy every time the code was built successfully).

Settings

These are shared settings that you can use within all App Service types. please note, some features wont available when you use functions apps with Serviceless option.

Application settings

The application settings let you configure everything from the stack and versions that the App Service runs, to which HTTP version it runs. In here, you can also add application settings as key/value pairs and connectionstrings to other services.

Authentication / Authorization

App Service allows you to easily require users to authenticate before they can use your application. Just flip a switch and choose which identity provider you want to use. You can choose Google, Facebook, Twitter, Microsoft, Azure Active Directory, or a custom provider.

Azure Monitor Application Insights

You can configure the Azure Monitor Application Insights extension that runs in the App Service. This extension collects performance and diagnostics information from the App Service and sends that to the Application Insights instance that you use to monitor and analyze your App.

Identity

The identity feature allows you to assign a Managed Service Identity to the App Service. This is an identity that lives in Azure Active Directory and can be used to authenticate to other services, like Azure Key Vault. Using this, you don’t need to store any credentials in your code or in the configuration of your App Service to authenticate to services like Azure Key Vault.

Backups

You can create backups of everything in your App Service on a regular basis. Backups saves the content, so the application and the settings of your App Service. It can also backup connected services, like an Azure SQL Database that is connected to the App Service with a connection string. These backups are useful for when you want to revert to a previously working version of your App Service.

Custom domains

When you create an App Service, it has a URL that you can access from the internet. By default, this is something like xyz.azurewebsites.net. You can couple your custom domain names to the App service, so that you can reach it through your URL. You can also buy a domain and couple it to your App Service, straight form the Azure portal.

SSL settings

You can secure the traffic to your App Service by adding SSL certificates and binding them to domains that are assigned to your App Service. The default App Service URL, xyz.azurewebsites.net, is already secured with an SSL certificate. For custom domains, you can use SSL certificates that you’ve bought somewhere. Or you can use an Azure App Service Certificate that you buy through the Azure portal. Azure App Service Certificates are bought from famous providers like digicert or godaddy.

Networking

You can protect your App Service by adding IP restrictions. And you can create hybrid connections to your App Service that connect it to services and data stores that run somewhere else than Azure, for instance in your own datacenter. And you can use virtual networks to securely connect services to your App Service.

Scale up (App Service plan)

When you increase the amount of compute resources that run your App Service, you call that scaling up. You can do that by choosing a higher pricing tier for the App Service Plan. This will provide your App Service with more CPU, memory, and disk space. Obviously, you can also scale down to save costs.

Scale out (App Service plan)

Scaling out happens when you increase the number of instances that you run. In App Service, you can scale out with a manual slider, to increase the amount of App Service instances that you run. Or you can scale out automatically, based on a schedule, or on metrics like when the CPU utilization hits 70%. You can also create an automatic scaling method that uses both a schedule and metrics.

WebJobs

A very interesting feature of App Service is WebJobs. WebJobs is a type of service that you can use to run background jobs with. And they can be triggered by a schedule or by an external event, like when a new message arrives on a queue. All that you have to do, is write the code that does something whenever the WebJob runs. WebJobs are very similar to Azure Functions, which run in Function Apps. In fact, Azure Functions are built on the same technology as WebJobs. Functions are the evolution of WebJobs, but you can still use WebJobs and they might stick around for a while.

Push

If you want to send push notifications to applications, you can use the Push feature in App Service. This enables you to send push notifications to many push notification platforms, like the ones from Apple, Android, and Windows, without you having to cod the specific implementations for these platforms. We’ll discuss te Push feature more in the post about Mobile Apps.

Continue reading on Azure App Services Features - FoxuTech

要查看或添加评论,请登录

Prabhakar T的更多文章

社区洞察

其他会员也浏览了