{"id":5905,"date":"2021-03-03T14:47:46","date_gmt":"2021-03-03T19:17:46","guid":{"rendered":"https:\/\/www.apps4rent.com\/blog\/?p=5905"},"modified":"2023-01-19T07:24:51","modified_gmt":"2023-01-19T11:54:51","slug":"autoscaling-in-azure-app-service","status":"publish","type":"post","link":"https:\/\/www.apps4rent.com\/blog\/autoscaling-in-azure-app-service\/","title":{"rendered":"Best Practices for Autoscaling in Azure App Service"},"content":{"rendered":"<p>Autoscaling refers to the process of automatically allocating resources to meet performance requirements. As the amount of work increases, the software may require more resources to continue delivering seamless performance and satisfy service-level agreements (SLAs). Similarly, when the volume of work decreases, the software requires fewer resources, and the ones that are not in use can be de-allocated to save costs. In this article, we will learn the best practices for autoscaling in Azure App Service.<\/p>\n<h2 style=\"font-size: 24px;\">What Is Azure App Service?<\/h2>\n<p>Azure App Service is a fully managed HTTP-based service for building, deploying and scaling your web apps. It enables you to develop and host web apps, mobile back-ends, and RESTful APIs in your preferred programming language without managing infrastructure. Azure App Service provides all the tools you need to create Web Apps, Mobile Apps, Logic Apps, API Apps, and more.<\/p>\n<h2 style=\"font-size: 24px;\">What Are the Best Practices for Autoscaling in Azure App Service?<\/h2>\n<p>Autoscaling leverages the elasticity of cloud-based environments while reducing management overhead. It minimizes the need for an IT professional to constantly monitor the performance of an application and decide about the allocation, de-allocation, or re-allocation of resources. Here are some tips that will help you take the maximum advantage of the service.<\/p>\n<h4 style=\"font-size: 20px;\">Minimum and Maximum Require Different Values<\/h4>\n<p>Ensure that the minimum and maximum values are different and have a sufficient margin between them. Suppose you have set up the minimum value to 4, maximum value to 4, and the current instance count is 4, scaling cannot take place. As scaling occurs between the minimum and maximum instance counts, you will need to keep an adequate margin between them.<\/p>\n<h4 style=\"font-size: 20px;\">Pay Attention While Setting Up Values<\/h4>\n<p>Manual scaling is temporary and is reset by autoscaling to the minimum and maximum values set previously. If you manually change the instance count, the autoscale engine scales back to the minimum or the maximum based on the values set up while updating autoscaling settings. To sustain the changes, you will have to reset the autoscale rules as well.<\/p>\n<h4 style=\"font-size: 20px;\">Always Set Up Both Values<\/h4>\n<p>Always use the combination of scale-out and scale-in rules to ensure the addition as well as the removal of resources. If you define only the minimum value or the maximum value, autoscaling will take place in a single direction. For optimal use of resources and minimizing costs, you want both allocation and de-allocation of resources.<\/p>\n<h4 style=\"font-size: 20px;\">Choose the Right Statistic for Diagnostic Metrics<\/h4>\n<p>While creating diagnostic metrics, it is essential to choose the appropriate statistics. Any of the Minimum, Maximum, Average, and Total can be chosen as a metric to scale by. However, the Average is the most common statistic.<\/p>\n<h4 style=\"font-size: 20px;\">Choose the Metric Thresholds Carefully<\/h4>\n<p>It is important to choose the thresholds attentively for all metric types. The best practice is to choose different thresholds for scale-in and scale-out based on practical scenarios. Impractical selection of thresholds can lead autoscaling to behave in a way that may seem confusing.<\/p>\n<h4 style=\"font-size: 20px;\">Take Precautions while Configuring Multiple Profiles<\/h4>\n<p>There are various ways to set up a profile in the autoscale settings. You can set up a default profile that doesn\u2019t depend on any schedule or time. You can also set up a recurring profile or a profile that takes date and time values and can be configured for a fixed period.<\/p>\n<p>When autoscaling takes place, the autoscale engine always checks for a profile in the following order.<\/p>\n<ol>\n<li style=\"margin-bottom: 10px;\">Fixed Date Profile<\/li>\n<li style=\"margin-bottom: 10px;\">Recurring Profile<\/li>\n<li style=\"margin-bottom: 10px;\">Default Profile<\/li>\n<\/ol>\n<p>Autoscale processes only one profile at a time. If a profile condition is met, the autoscale engine doesn\u2019t check the profile condition below it. If you want to include certain conditions from the next profile in the order, you must include them in the current profile.<\/p>\n<h4>Always Choose a Safe Default Instance Count<\/h4>\n<p>When metrics are not specified, autoscaling scales your Azure App Service to the default instance count. Thus, the default instance count is important and should be selected to the level suitable for your workload.<\/p>\n<h3 style=\"font-size: 23px;\">Deploy Azure App Service Environment with Apps4Rent<\/h3>\n<p>Although Azure App Service helps organizations solve crucial problems associated with scalability and security, it requires intensive care to keep the costs minimum. Therefore, you will need professionals highly skilled in Azure cloud architecture for the successful deployment of the service. With a <strong>Microsoft CSP such as Apps4Rent<\/strong>, you get a robust team of Azure hosting experts for seamless implementation of Azure App Service. Our hosting experts are available 24\/7 via phone, chat, and email for Azure plan inquiries.<\/p>\n<style>{#ddexitpopwrapper.open .ddexitpop {display: block;}#ddexitpopwrapper.open .ddexitpop{max-width:1000px;width:1000px;}}@media only screen and (min-width:99px) and (max-width:767px){#ddexitpopwrapper.open .ddexitpop {display: none;}}<\/style>\r\n<link rel=\"stylesheet\" type=\"text\/css\" href=\"https:\/\/www.apps4rent.com\/blog\/wp-content\/themes\/apps4rentoffice\/popup\/exitpopup\/ddexitpop.css\"\/><script src=\"https:\/\/www.apps4rent.com\/blog\/wp-content\/themes\/apps4rentoffice\/popup\/exitpopup\/ddexitpop.js\"><\/script>\r\n<div id=\"ddexitpop1\" class=\"ddexitpop\" style=\"z-index:1000;box-shadow: #00000085 -20px -5px 1200px 1000px;max-width:1000px;width:1000px;left:50%;top: 5px;margin-left: -500px;\">\r\n<div style=\"background: #fff;color: white;height:615px;\">\r\n<div class=\"col-md-6 popup1\" style=\"color:white;height:auto;padding-left: 0px;padding-right: 0px;background:none;\"><img decoding=\"async\" src=\"https:\/\/www.apps4rent.com\/blog\/wp-content\/uploads\/2020\/11\/apps4rent-manage-azure-services.png\" alt=\"Manage Azure\" style=\"height: inherit;\"\/><\/div>\r\n<div class=\"col-md-6\" style=\"background: white;\">\r\n<div style=\"margin-right: -15px;\"><span style=\"cursor: pointer;position: relative; top: 0px;left: 0px;float: right;font-family: Arial;font-size: 17px;background-color: #d1d1d1;color: #4c4c4c; padding-left: 10px;padding-right: 10px;text-decoration: none;right: -40px;\" onclick=\"myFunction()\">X<\/span><\/div>\r\n<p style=\"padding-top: 7px;color: #30508c;margin-bottom: 10px;margin-top: 30px;text-align: center;line-height: 35px;font-size:30px;font-weight: 500; font-family:roboto !important;\">Looking for help with Azure?<br \/>\r\nOur Azure experts can help you.<\/p>\r\n<p>\n<div class=\"wpcf7 no-js\" id=\"wpcf7-f7298-o1\" lang=\"en-US\" dir=\"ltr\" data-wpcf7-id=\"7298\">\n<div class=\"screen-reader-response\"><p role=\"status\" aria-live=\"polite\" aria-atomic=\"true\"><\/p> <ul><\/ul><\/div>\n<form action=\"\/blog\/wp-json\/wp\/v2\/posts\/5905#wpcf7-f7298-o1\" method=\"post\" class=\"wpcf7-form init\" aria-label=\"Contact form\" novalidate=\"novalidate\" data-status=\"init\">\n<fieldset class=\"hidden-fields-container\"><input type=\"hidden\" name=\"_wpcf7\" value=\"7298\" \/><input type=\"hidden\" name=\"_wpcf7_version\" value=\"6.1.5\" \/><input type=\"hidden\" name=\"_wpcf7_locale\" value=\"en_US\" \/><input type=\"hidden\" name=\"_wpcf7_unit_tag\" value=\"wpcf7-f7298-o1\" \/><input type=\"hidden\" name=\"_wpcf7_container_post\" value=\"0\" \/><input type=\"hidden\" name=\"_wpcf7_posted_data_hash\" value=\"\" \/><input type=\"hidden\" name=\"_wpcf7cf_hidden_group_fields\" value=\"[]\" \/><input type=\"hidden\" name=\"_wpcf7cf_hidden_groups\" value=\"[]\" \/><input type=\"hidden\" name=\"_wpcf7cf_visible_groups\" value=\"[]\" \/><input type=\"hidden\" name=\"_wpcf7cf_repeaters\" value=\"[]\" \/><input type=\"hidden\" name=\"_wpcf7cf_steps\" value=\"{}\" \/><input type=\"hidden\" name=\"_wpcf7cf_options\" value=\"{&quot;form_id&quot;:7298,&quot;conditions&quot;:[{&quot;then_field&quot;:&quot;apoint&quot;,&quot;and_rules&quot;:[{&quot;if_field&quot;:&quot;meeting&quot;,&quot;operator&quot;:&quot;equals&quot;,&quot;if_value&quot;:&quot;Yes&quot;}]}],&quot;settings&quot;:{&quot;animation&quot;:&quot;yes&quot;,&quot;animation_intime&quot;:200,&quot;animation_outtime&quot;:200,&quot;conditions_ui&quot;:&quot;normal&quot;,&quot;notice_dismissed&quot;:false,&quot;notice_dismissed_rollback-cf7-5.9.5&quot;:true}}\" \/>\n<\/fieldset>\n<style>.wpcf7 form .wpcf7-response-output{margin: 0.5em 0.5em 0.5em;}.first{width:60px;color: #2A363F;text-align: left;}.wpcf7-list-item-label{color: #2A363F;text-align: left;font-size: 20px 'Roboto';font-weight:400;font-style: normal;}.inputf{font: 16px 'Roboto !important';font-weight: normal;font-style: normal;line-height: 25px;color: #2A363F;padding: 5px 10px;font-size: 16px;border: #9d9fa0 1px solid !important;margin-bottom:20px !important;box-sizing: border-box;border-radius: 3px !important;width: 100%;}\n.cf7-style div.wpcf7-response-output{width:fit-content;margin: 0px;padding: 5px !important;}.button4 {padding: 15px 20px;font-size: 18px !important;background: #375181;font-family: sans-serif;color: #fff;border: #9dbfff 2px solid;box-shadow: none;font-weight: bold;margin-bottom:0px !important;width: 100% !important;}.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output{width: max-content;margin: 0px;}\n<\/style>\n<style>@media only screen and (min-width:99px) and (max-width:767px){#content{margin-left:0px auto;}.sec {width:100% !important;float: none !important;}.html input[type=\"button\"], input[type=\"reset\"], input[type=\"submit\"]{font-size:16px !important;}}\n<\/style>\n<div style=\"padding-left: 15px;padding-right: 15px;padding-top: 15px;padding-bottom: 0px;\">\n\t<div style=\"float: left;width: 100%;margin-right: 15px;\" class=\"sec\">\n\t\t<p><span class=\"wpcf7-form-control-wrap\" data-name=\"Name\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-text wpcf7-validates-as-required inputf\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Name*\" value=\"\" type=\"text\" name=\"Name\" \/><\/span>\n\t\t<\/p>\n\t<\/div>\n\t<div style=\"float: left;width: 100%;margin-right: 15px;\" class=\"sec\">\n\t\t<p><span class=\"wpcf7-form-control-wrap\" data-name=\"contact\"><input size=\"40\" maxlength=\"10\" minlength=\"6\" class=\"wpcf7-form-control wpcf7-tel wpcf7-validates-as-required wpcf7-text wpcf7-validates-as-tel inputf\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Contact Number*\" value=\"\" type=\"tel\" name=\"contact\" \/><\/span>\n\t\t<\/p>\n\t<\/div>\n\t<div style=\"float: left;width: 100%;\" class=\"sec\">\n\t\t<p><span class=\"wpcf7-form-control-wrap\" data-name=\"email\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-email wpcf7-validates-as-required wpcf7-text wpcf7-validates-as-email inputf\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Email ID*\" value=\"\" type=\"email\" name=\"email\" \/><\/span>\n\t\t<\/p>\n\t\t<p style=\"font-size: 20px 'Roboto';font-weight:400;font-style: normal;color: #2A363F;text-align: left;margin-bottom: 10px;\">Schedule a meeting?<br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"meeting\"><span class=\"wpcf7-form-control wpcf7-checkbox wpcf7-validates-as-required wpcf7-exclusive-checkbox meeting\"><span class=\"wpcf7-list-item first\"><label><input type=\"checkbox\" name=\"meeting\" value=\"Yes\" \/><span class=\"wpcf7-list-item-label\">Yes<\/span><\/label><\/span><span class=\"wpcf7-list-item last\"><label><input type=\"checkbox\" name=\"meeting\" value=\"No\" \/><span class=\"wpcf7-list-item-label\">No<\/span><\/label><\/span><\/span><\/span>\n\t\t<\/p>\n\t\t<div data-id=\"apoint\" data-orig_data_id=\"apoint\"  class=\"\" data-class=\"wpcf7cf_group\">\n\t\t\t<p><span class=\"wpcf7-form-control-wrap\" data-name=\"time\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-text inputf\" aria-invalid=\"false\" placeholder=\"Preferred Callback Time* (E.g. Monday, 4 PM EST, NJ, USA)\" value=\"\" type=\"text\" name=\"time\" \/><\/span>\n\t\t\t<\/p>\n\t\t<\/div>\n\t<\/div>\n\t<div style=\"float: left;width: 100%;\" class=\"sec\">\n\t\t<p><span class=\"wpcf7-form-control-wrap\" data-name=\"msg\"><textarea cols=\"40\" rows=\"5\" maxlength=\"2000\" class=\"wpcf7-form-control wpcf7-textarea inputf\" aria-invalid=\"false\" placeholder=\"Message\" name=\"msg\"><\/textarea><\/span>\n\t\t<\/p>\n\t<\/div>\n\t<div>\n\t\t<p><input class=\"wpcf7-form-control wpcf7-submit has-spinner button4\" type=\"submit\" value=\"SUBMIT REQUEST\" \/>\n\t\t<\/p>\n\t<\/div>\n<\/div><p style=\"display: none !important;\" class=\"akismet-fields-container\" data-prefix=\"_wpcf7_ak_\"><label>&#916;<textarea name=\"_wpcf7_ak_hp_textarea\" cols=\"45\" rows=\"8\" maxlength=\"100\"><\/textarea><\/label><input type=\"hidden\" id=\"ak_js_1\" name=\"_wpcf7_ak_js\" value=\"137\"\/><script>\ndocument.getElementById( \"ak_js_1\" ).setAttribute( \"value\", ( new Date() ).getTime() );\n<\/script>\n<\/p><div class=\"wpcf7-response-output\" aria-hidden=\"true\"><\/div>\n<\/form>\n<\/div>\n<\/p>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<p><script>jQuery(function(){ddexitpop.init({contentsource: ['id', 'ddexitpop1'],fxclass: 'random',hideaftershow: true,displayfreq: 'always',onddexitpop: function($popup){console.log('Exit Pop Animation Class Name: ' + ddexitpop.settings.fxclass)}})})<\/script><script>function myFunction(){document.getElementById(\"ddexitpop1\").style.display = \"none\";}<\/script><\/p>\r\n\n","protected":false},"excerpt":{"rendered":"<p>Autoscaling refers to the process of automatically allocating resources to meet performance requirements. As the amount of work increases, the software may require more resources to continue delivering seamless performance and satisfy service-level agreements (SLAs). Similarly, when the volume of work decreases, the software requires fewer resources, and the ones that are not in use [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[545],"tags":[],"class_list":["post-5905","post","type-post","status-publish","format-standard","hentry","category-azure"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.apps4rent.com\/blog\/wp-json\/wp\/v2\/posts\/5905","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.apps4rent.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.apps4rent.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.apps4rent.com\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.apps4rent.com\/blog\/wp-json\/wp\/v2\/comments?post=5905"}],"version-history":[{"count":4,"href":"https:\/\/www.apps4rent.com\/blog\/wp-json\/wp\/v2\/posts\/5905\/revisions"}],"predecessor-version":[{"id":7342,"href":"https:\/\/www.apps4rent.com\/blog\/wp-json\/wp\/v2\/posts\/5905\/revisions\/7342"}],"wp:attachment":[{"href":"https:\/\/www.apps4rent.com\/blog\/wp-json\/wp\/v2\/media?parent=5905"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.apps4rent.com\/blog\/wp-json\/wp\/v2\/categories?post=5905"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.apps4rent.com\/blog\/wp-json\/wp\/v2\/tags?post=5905"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}