Назад | Перейти на главную страницу

Масштабируемая служба приложений плохо масштабируется. Направляет весь трафик на экземпляр со 100% загрузкой ЦП

У меня есть план обслуживания приложений, который увеличен до двух экземпляров. Мне удалось получить статистику по двум экземплярам, ​​один из которых имеет 100% ЦП, а другой - 5% ЦП. Это проблема, потому что кажется, что все HTTP-запросы отправляются тому, кто использует 100% ЦП, и поэтому веб-страница загружается очень медленно.

Я отключил ARR Affinity согласно эта страница

Есть ли еще одна причина, по которой все запросы API и HTTP отправляются в один и тот же экземпляр? Что я могу сделать, чтобы сбалансировать нагрузку между двумя экземплярами?

Есть ли еще одна причина, по которой все запросы API и HTTP отправляются в один и тот же экземпляр?

Если у вас есть балансировщик нагрузки, используйте постоянство сеанса вы можете сохранить доступ одного и того же клиента к той же виртуальной машине.

На уровнях Free и Shared приложение получает минуты ЦП на общем экземпляре виртуальной машины и не может масштабироваться. На других уровнях приложение запускается и масштабируется следующим образом.

Когда вы создаете приложение в службе приложений, оно включается в план службы приложений. Когда приложение запускается, оно запускается на всех экземплярах виртуальных машин, настроенных в плане службы приложений. Если несколько приложений находятся в одном плане службы приложений, все они используют одни и те же экземпляры виртуальной машины. Если у вас есть несколько слотов развертывания для приложения, все слоты развертывания также работают на одних и тех же экземплярах виртуальной машины. Если вы включаете журналы диагностики, выполняете резервное копирование или запускаете веб-задания, они также используют циклы ЦП и память на этих экземплярах виртуальных машин.

Таким образом, план службы приложений является единицей масштабирования приложений службы приложений. Если план настроен на запуск пяти экземпляров виртуальных машин, то все приложения в плане работают на всех пяти экземплярах. Если план настроен для автомасштабирования, то все приложения в плане масштабируются вместе на основе настроек автомасштабирования.

Что я могу сделать, чтобы сбалансировать нагрузку между двумя экземплярами?

Вы можете использовать условия автоматического масштабирования для масштабирования виртуальных машин на основе такой метрики, как 50% ЦП на экземпляр. Для получения информации о масштабировании приложения см. Масштабирование количества экземпляров вручную или автоматически

Таким образом, проблема решилась сама собой, когда я уменьшил масштаб с P2v2 до S3. У них одинаковая цена, один - премиум-уровня, другой - стандартного уровня.

Все запросы теперь сбалансированы равномерно, а время ответа сайта сократилось с 10-12 секунд до 60 мс, как и положено хорошему сайту.

Все еще не уверен, почему это произошло в первую очередь