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

Содержание этой статьи основано на категории Распределение ресурсов для энергоэффективности программного обеспечения, представленной в первой статье этой серии статей об энергоэффективности программного обеспечения.

Масштабирование (зависит от облака)

Влияние энергопотребления на масштабирование ресурсов (автоматическое масштабирование) зависит от того, как поставщик облачных услуг реализует базовую оркестровку ресурсов. В некоторых случаях реализация может включать предварительное выделение пропускной способности ресурсов, например, при использовании зарезервированных экземпляров. Это означает, что определенные атрибуты (такие как тип инстанса или регион) имеют пропускную способность ресурсов по запросу, предварительно приобретенную в облаке, что приводит к сниженным ценам. С другой стороны, в таких ситуациях, как спотовые инстансы AWS, неиспользуемый объем облачного хранилища по запросу можно приобрести по сниженной цене.

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

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

Планирование

Чтобы оптимизировать энергопотребление и свести к минимуму влияние на энергопотребление, крайне важно оптимизировать запланированное время для ресурсоемких операций и высвобождения ресурсов на основе шаблонов трафика. Пример облачной стратегии включает использование планировщика ресурсов AWS AMS [1] для автоматического планирования запуска и остановки инстансов Amazon EC2, а также масштабирования групп автоматического масштабирования [2] до ожидаемых изменений в шаблонах трафика.

Для планирования под конкретную ОС рекомендуется настроить такие инструменты, как cron, для выполнения необходимых задач только в те промежутки времени, когда система имеет наименьшую нагрузку. За счет планирования этих задач в периоды дня, когда приложение испытывает наименьшую пропускную способность, снижается вероятность неэффективных с точки зрения энергопотребления событий, таких как коллизии в сети. Такой подход помогает смягчить потенциальное влияние на энергопотребление.

Брокерские услуги (для облака)

Согласно Gartner [3], брокер облачных услуг (CSB) — это «ИТ-роль и бизнес-модель, в которой компания или организация добавляет ценность к одной или нескольким облачным службам (общедоступным или частным) от имени потребителей этих услуг. CSB выполняет три основные роли: агрегация, интеграция и посредничество в настройке». Существует три основных типа CSB: облачный агрегатор, облачный интегратор и облачный настройщик.

Облачный агрегатор объединяет несколько каталогов услуг, а облачный интегратор автоматизирует рабочие процессы в гибридных средах с помощью единой оркестровки. С другой стороны, настройщик облачных вычислений модифицирует существующие облачные службы и добавляет новые в соответствии с требованиями заказчика.

Внедрение CSB может привести к экономии затрат и энергии за счет сокращения распределения неиспользуемых облачных сервисов, которые в противном случае были бы потрачены впустую при покупке пакетных наборов функций, включающих ненужные сервисы. Используя CSB, компании могут оптимизировать использование ресурсов и избежать ненужного потребления энергии.

Заключение

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

Статьи из этой серии

Следующие статьи являются частью этой всеобъемлющей серии, в которой рассматриваются тактики энергоэффективности в архитектуре и реализации программного обеспечения.

Рекомендации

[1]: веб-сервисы Amazon. Как работает планировщик ресурсов AMS.
https://docs.aws.amazon.com/managedservices/latest/userguide/resource-scheduler-how-works.html. по состоянию на 25 июня 2022 г.

[2]: веб-сервисы Amazon. Запланированное масштабирование для Amazon EC2 Auto Scaling.
https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-scheduled-scaling.html. по состоянию на 24 июня 2022 г.

[3]: Глоссарий Gartner — информационные технологии.
https://www.gartner.com/en/information-technology/glossary/cloud-services-brokerage-csb, по состоянию на 25 июня 2022 г.