Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Организациям, которые разрабатывают и развертывают решения в облаке, также требуются надежные тесты. Узнайте о рекомендациях и рекомендациях по выполнению тестов рабочей нагрузки и оптимизации для более устойчивой модели тестирования.
Это важно
Эта статья является частью серии устойчивых рабочих нагрузок Azure Well-Architected Framework . Если вы не знакомы с этой серией, рекомендуется начать с того, что такое устойчивая рабочая нагрузка?
Эффективность тестирования
Выполнение интенсивного тестирования во время низкоуглеродных периодов
Выполнение интеграции, производительности, нагрузки или других возможностей интенсивного тестирования может привести к значительной обработке. Хорошо разработанный проект тестирования для развернутых рабочих нагрузок может помочь обеспечить полное использование доступных ресурсов, что снижает выбросы углерода.
Выравнивание Green Software Foundation: осведомленность о углероде
Рекомендация:
- Где доступны данные о энергопотреблении, планируйте тестирование, когда центр обработки данных в основном использует возобновляемые источники энергии. Например, в некоторых регионах может оказаться более полезным выполнение тестов в ночное время, когда более чистые источники энергии более распространены.
Автоматизация CI/CD для масштабирования рабочих агентов по мере необходимости
Выполнение неиспользуемых или неактивных агентов непрерывной интеграции и непрерывной доставки (CI/CD) приводит к большему объему выбросов.
Выравнивание Green Software Foundation: эффективность оборудования
Recommendations:
Высокий уровень использования вычислительных ресурсов зависит от текущего спроса, что позволяет избежать ненужного выделения емкости.
Горизонтальное масштабирование выполняется только при необходимости и масштабировании, если не выполняется тестирование. Такой подход гарантирует отсутствие простой вычислительных ресурсов в тестовых средах.
Рассмотрим оптимизированные службы платформы, такие как контейнеры для тестирования на виртуальной машине( виртуальной машине), которая использует платформу для сокращения обслуживания.
При использовании агентов CI/CD рекомендуется кэширование
Использование механизмов кэширования во время CI/CD может сократить время вычислений, что снижает выбросы углерода.
Выравнивание Green Software Foundation: энергоэффективность
Recommendations:
Сохраните результаты из шагов в кэше и повторно используйте их между различными запусками CI/CD, когда это возможно. Если шагу требуется время ЦП для создания артефакта, который не часто изменяется между выполнением, сохраните артефакт для будущего использования. Эта оптимизация позволяет избежать много времени загрузки ЦП во всех запусках, создающих один и тот же артефакт многократно.
Используйте кэш, локальный для агента CI/CD, когда он размещается самостоятельно, чтобы сократить передачу данных и выбросы. Эта настройка гарантирует, что кэш не передается по сети, что может быть значительным источником выбросов.
Разделение больших репозиториев кода
Разделение больших репозиториев может помочь этапам CI/CD, в которых компилируются только измененные части кода. Эта стратегия сокращает время вычислений, что в конечном итоге снижает выбросы углерода.
Выравнивание Green Software Foundation: энергоэффективность
Recommendations:
Разделение больших репозиториев кода на небольшие репозитории и разделение основного кода от библиотек и зависимостей.
Публикация и повторное использование артефактов и библиотек кода, распространенных в нескольких репозиториях.
Профилирование и измерение рабочих нагрузок
Измерение, профилирование и тестирование рабочей нагрузки является обязательным для понимания того, как лучше использовать выделенные ресурсы.
Оценка того, где возможна параллелизация
Без правильной профилирования и тестирования рабочих нагрузок трудно знать, лучше всего ли использовать базовую платформу и развернутые ресурсы.
Выравнивание Green Software Foundation: измерение устойчивости
Recommendations:
Протестируйте приложения, чтобы понять одновременные запросы, одновременную обработку и другие факторы.
Рассмотрим компьютеры на основе GPU для повышения эффективности при запуске машинного обучения для тестов.
Определите, является ли рабочая нагрузка интенсивной и работает в целях оптимизации.
Рассмотрим следующие компромиссы: Запуск компьютеров на основе GPU для тестов машинного обучения может увеличить затраты.
Оценка с помощью инженерии хаоса
Выполнение интеграции, производительности и нагрузочных тестов повышает надежность рабочей нагрузки. Однако внедрение технологии хаоса может значительно помочь повысить надежность, устойчивость и реакцию приложений на сбои. Вы можете оптимизировать рабочую нагрузку, чтобы обрабатывать сбои корректно и тратить меньше ресурсов.
Выравнивание Green Software Foundation: измерение устойчивости
Recommendations:
Используйте нагрузочное тестирование или инженерию хаоса , чтобы оценить, как рабочая нагрузка обрабатывает сбои платформы и пики трафика или спады. Эта практика помогает повысить устойчивость службы и способность реагировать на сбои, что позволяет более оптимизированной обработки сбоев.
Используйте инженерию хаоса для тестирования сбоев энергии или моментов, которые генерируют больше углерода. Попробуйте настроить тесты, которые оспорите приложение, чтобы использовать как можно меньше энергии. Определите, как приложение должно реагировать на эти условия. Создайте конкретную экологическую версию, также известную как эко-версию, которая информирует пользователей о том, что они создают минимальный возможный углерод, жертвуя некоторыми функциями и, возможно, некоторыми производительностью. Эта версия также может служить приложением для оценки ее устойчивости.
Рассмотрим следующие компромиссы: Внедрение сбоев во время инженерии хаоса и увеличение нагрузки на любую систему также увеличивает выбросы, используемые для тестовых ресурсов. Оцените, как и когда можно использовать инженерию хаоса для повышения надежности рабочей нагрузки при рассмотрении последствий климатических действий при выполнении ненужных сеансов тестирования.
Установка пороговых значений ЦП и памяти при тестировании
Помогите создавать тесты для тестирования устойчивости в приложении. При выполнении тестов рекомендуется определить базовые показатели использования ЦП, чтобы обнаружить ненормальные изменения в базовых показателях использования ЦП. При наличии базовых показателей можно обнаружить неоптимальные решения, принятые в последних изменениях кода ранее.
Добавление тестов и шлюзов качества в конвейер развертывания и тестирования помогает избежать развертывания неуправляемых решений. Этот подход способствует сокращению выбросов.
Выравнивание Green Software Foundation: энергоэффективность
Recommendations:
Отслеживайте выделение ресурсов ЦП и памяти при выполнении тестов интеграции или модульных тестов.
Найдите ненормально высокие области потребления ресурсов в коде приложения и сосредоточьтесь на их устранении.
Настройте оповещения или тестовые сбои, если приложение превышает установленные базовые значения. Эта конфигурация помогает избежать развертывания неуправляемых рабочих нагрузок.
Рассмотрим следующие компромиссы: По мере роста приложений базовые показатели могут потребоваться, чтобы избежать сбоя тестов при внедрении новых функций.