У меня довольно простое приложение .NET MVC. Не требуется много вычислительной мощности. Однако мы ожидаем огромный трафик.
Я использую Blitz.IO для имитации одновременных пользователей, и примерно при 8000 одновременных пользователей я начинаю замечать значительное замедление, которое я хотел бы вызвать событие автоматического масштабирования. Проблема в том, что загрузка процессора составляет всего около 3%. Так что мое узкое место не в процессоре.
Наша текущая установка - это три веб-приложения в трех разных регионах, до 30 виртуальных машин.
Я заметил, что в разделе веб-приложения Azure вы можете масштабировать по входящим данным, дате выхода и очереди Http. Я не совсем уверен, какой из них использовать и что именно означает каждый из них. И я не смог точно определить, что означают эти показатели в поисковой системе.
Для веб-приложений у вас в основном есть данные на входе / выходе, память, ЦП, дисковая очередь и HTTP-очередь (используйте портал предварительного просмотра, чтобы увидеть их все). Наблюдая только за тем, как любое из этих значений ведет себя на мониторе, когда вы увеличиваете количество одновременно работающих пользователей, вы сможете установить порог для работы с автоматическим масштабированием, даже если вы не понимаете их полностью. Вот краткое объяснение каждого:
ЦПУ: Средняя загрузка ЦП (все VMS)
объем памяти: Среднее использование памяти (все VMS)
Длина дисковой очереди: Количество отложенных дисковых операций. Если ваше приложение считывает / записывает много данных с / на диск, это может быть ваш пробел. Чем больше очередь, тем больше ваш веб-сервер ожидает продолжения дискового ввода-вывода.
Длина очереди HTTP: Количество ожидающих HTTP-операций. Если ваше приложение получает больше запросов, чем может обработать веб-сервер, это может быть ваш пробел. Обычно ошибка процессора, но не правило.
Вход / выход данных: Объем входящего / исходящего трафика (в килобайтах). Если ваше приложение передает большой объем данных на входе / выходе, пропускная способность сети может быть вашим недостатком.
Вот очень хорошее руководство, которое поможет вам начать настройку автоматического устаревания с помощью портала предварительного просмотра.
https://azure.microsoft.com/en-us/documentation/articles/web-sites-scale/