Экономия на Azure стоимости биллинга с помощью сервисов приложений? - PullRequest
0 голосов
/ 04 мая 2020

У меня есть. NET Базовое приложение, в настоящее время работающее как Azure Служба приложений, и мне нужно, чтобы оно выполняло большую «работу» только несколько раз в день. Чтобы сэкономить на почасовом расчете, я разработал следующее решение:

  1. Использование Runbook (Azure Автоматизация) : масштабировать план обслуживания приложения до «Свободно» уровень в 7:00 вечера
  2. Использование Runbook (Azure Автоматизация) : масштабирование плана обслуживания приложения обратно до премиального уровня в 8:00 AM
  3. Жесткий код my. NET Базовое приложение, чтобы гарантировать, что оно выполняет тяжелую «работу» только с 8:00 до 19:00.

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

Мой вопрос - какой шаблон проектирования я должен реализовать, чтобы выполнить sh то, что я пытаюсь сделать? Мне нужно много вычислительных ресурсов, но только на несколько часов в день. Я знаю, что у AWS есть «точечные» экземпляры, которые вы можете настроить - есть ли подобный механизм в Azure?

В идеале я мог бы реализовать решение, которое подразумевало бы мне оплату только этих тяжелых вычислительных ресурсов, когда я на самом деле нужно (например: несколько раз в день, когда солнце взошло)

Спасибо за понимание и помощь!


РЕДАКТИРОВАТЬ в отношении тип вычислений, мое резюме, по сути, несколько ML. NET тренеров, работающих параллельно с некоторыми умеренными написаниями документов Elasticsearch

Ответы [ 2 ]

1 голос
/ 04 мая 2020

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

Если вы можете поместить свое «вычисление» в Azure Функции , выход без сервера с планом потребления, вероятно, будет самым хорошим решением. Однако для выполнения отдельных функций задан тайм-аут, поэтому вам необходимо проверить, соответствует ли ваше приложение требованиям.

В качестве альтернативы вы можете поместить свое приложение в Azure экземпляр контейнера и раскрутите это по требованию.

Если у вас ДЕЙСТВИТЕЛЬНО высокая рабочая нагрузка, вы можете использовать Azure Batch . Если ваша текущая рабочая нагрузка может быть выполнена в плане AppService, это может быть «излишним».

Эквивалент AWS экземпляров Spot называется Azure Spot Virtual Machines . Вы также можете использовать их с Azure Batch.

1 голос
/ 04 мая 2020

Да, вы можете переключиться на без сервера. Хост-интерфейс на учетных записях хранения и бэк-энд переходят на Azure Функции (план потребления).

PS: если это длительная обработка, это может быть не лучшим решением, если вы не используете Durable Functions.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...