Как предоставляются (и оплачиваются) облачные сервисы после запроса нового развертывания в API Azure REST?

Я использую API-интерфейс Azure REST для создания, развертывания и запуска облачной службы (классическая) (cspkg, размещенной в хранилище Azure) с сотнями экземпляров. Я заметил, что время, необходимое Azure для подготовки и запуска запрошенных экземпляров, действительно неоднородно. Первые случаи могут начаться через 6-7 минут, но последние могут занять до 15-20 минут, примерно на 10 минут дольше, чем первые. Итак, мои вопросы:

  • Это ожидаемое поведение? Если так, в чем логика? Могу ли я сделать что-нибудь, чтобы ускорить процесс?

  • Как Azure выставляет счет? Подсчитывает ли он общее количество экземпляров с момента самого начала развертывания облачной службы? или это с учетом конкретных сроков в каждом отдельном случае?

ОБНОВЛЕНИЕ: я проверял больше сценариев и нашел удивительный сюрприз. Если я заменю все процессы, которые должны запускать мои экземпляры облачной службы, простым ожиданием в течение нескольких минут (запустите файл.bat с командой timeout), то все экземпляры начнутся почти одновременно (примерно 15 секунд между самым быстрым и самым медленным экземпляром). Это было не просто удача и случайное поведение, я доказал, что это поведение повторяется, и я даже не могу объяснить основную причину.

1 ответ

  • Я также проверил это несколько недель назад, и время запуска зависит от размера машины, если она большая, у нее больше ресурсов, поэтому время загрузки быстрее, а также, если возникает какая-либо ошибка, исключение при запуске виртуальная машина будет перезапускаться до тех пор, пока не сможет успешно запуститься. Я прогуглил это, но не нашел никакого решения, чтобы ускорить это, поэтому я не думаю, что можно что-то сделать со временем запуска. Каждый раз, когда вы развертываете что-то в фоновом режиме, он создает Windows Server, загружает его, развертывает на нем ваш пакет и ставит ваши веб-роли за балансировщик нагрузки, поэтому это занимает так много времени, потому что многое происходит.

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

Другие вопросы по тегам