Изучение параметров горизонтального масштабирования
служба приложение Azure поддерживает два варианта автоматического масштабирования веб-приложений:
- Автомасштабирование с помощью автомасштабирования Azure. Автомасштабирование принимает решения по масштабированию на основе заданных правил.
- автоматическое масштабирование службы приложение Azure. Автоматическое масштабирование принимает решения по масштабированию на основе параметров, которые вы выбрали.
Что такое автомасштабирование?
Автомасштабирование — это облачная система или процесс для регулирования объема доступных ресурсов в соответствии с текущими потребностями. Автомасштабирование производится по горизонтали, а не по вертикали.
Автомасштабирование может выполняться по расписанию или если по результатам оценки выясняется, что системе недостаточно ресурсов. Например, оно может запускаться, если возрастает загрузка ЦП, объем занятой памяти, количество входящих запросов к службе или по сочетанию условий.
автомасштабирование служб приложение Azure
Функция автомасштабирования в Службе приложений Azure отслеживает метрики ресурсов веб-приложения в процессе его работы. Он обнаруживает ситуации, когда другие ресурсы необходимы для обработки растущей рабочей нагрузки, и гарантирует доступность этих ресурсов до перегрузки системы.
Автомасштабирование реагирует на изменения в среде, добавляя и удаляя веб-серверы, а также распределяя нагрузку между ними. При этом производительность ЦП, объем оперативной памяти и размер хранилища каждого отдельного веб-сервера, на котором работает приложение, не меняется. Меняется лишь их число.
Правила автомасштабирования
Функция автомасштабирования принимает решения на основе определенных вами правил. В правиле указывается пороговое значение метрики, при превышении которого инициируется событие автомасштабирования. Кроме того, функция автомасштабирования может освобождать ресурсы, когда рабочая нагрузка снижается.
Определять правила автомасштабирования нужно с осторожностью. Например, атака типа "отказ в обслуживании" обычно приводит к резкому росту входящего трафика. Не пытайтесь справиться с всплеском активности вследствие такой атаки — это бесполезно и затратно. Поддельные запросы следует не обрабатывать, а отклонять. Правильнее будет реализовать обнаружение и фильтрацию таких запросов, чтобы предотвратить их поступление в службу.
Когда следует использовать автомасштабирование
Автомасштабирование обеспечивает эластичность служб. Например, можно предполагать, что интенсивность использования бизнес-приложения во время праздников снижается.
Автомасштабирование повышает уровень доступности и отказоустойчивость. Оно позволяет избежать отклонения клиентских запросов к службе из-за того, что экземпляр не успел вовремя обработать запрос, или из-за сбоя экземпляра вследствие перегрузки.
Автомасштабирование производится путем добавления и удаления веб-серверов. Если каждый запрос к веб-приложению требует ресурсоемкой обработки, автомасштабирование может быть малоэффективным. В таких случаях может требоваться масштабирование вручную. Например, если запрос к веб-приложению предполагает выполнение сложных операций с набором данных, то он может полностью исчерпать вычислительные возможности и память экземпляра, размер которого недостаточен.
Автомасштабирование — не лучший подход, если ожидается долгосрочный рост нагрузки. Возможно, у вас есть веб-приложение, которое начинается с нескольких пользователей, но увеличивает популярность с течением времени. Мониторинг ресурсов с целью принятия решения о запуске автомасштабирования связан с накладными расходами. В ситуации, когда вы можете предсказать скорость роста, ручное масштабирование системы с течением времени может оказаться более экономичным.
Еще один фактор — количество экземпляров. Вы изначально можете ограничиться небольшим числом экземпляров для выполнения службы. Однако в этой ситуации служба подвержена простою или нехватке доступности, включена ли автомасштабирование. Чем меньше числа экземпляров изначально, тем меньше емкости необходимо обрабатывать увеличивающуюся рабочую нагрузку, а автомасштабирование увеличивает число экземпляров.
автоматическое масштабирование службы приложение Azure
Автоматическое масштабирование — это новый вариант горизонтального масштабирования, который автоматически обрабатывает решения о масштабировании для веб-приложений и Служба приложений планов. Это отличается от существующего автомасштабирования Azure, что позволяет определять правила масштабирования на основе расписаний и ресурсов. С помощью автоматического масштабирования можно настроить параметры масштабирования, чтобы повысить производительность приложения и избежать проблем с холодным запуском. Экземпляры платформы предваряют работу в качестве буфера при масштабировании, обеспечивая плавные переходы производительности. Плата взимается в секунду для каждого экземпляра, включая предварительно подготовленные экземпляры.
Ниже приведены несколько сценариев автоматического масштабирования.
- Вы не хотите настраивать правила автомасштабирования на основе метрик ресурсов.
- Вы хотите, чтобы веб-приложения в одном и том же Служба приложений план масштабировать по-разному и независимо друг от друга.
- Веб-приложение подключено к базе данных или устаревшей системе, которая может не масштабироваться так быстро, как веб-приложение. Масштабирование автоматически позволяет задать максимальное количество экземпляров, в которых может масштабироваться план Служба приложений. Этот параметр помогает веб-приложению не перегружать серверную часть.