Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Эффективность производительности — эффективное использование ресурсов рабочей нагрузки. Без хорошей стратегии вы, возможно, не сможете ожидать и удовлетворять требования пользователей. Возможно, вам придется прибегнуть к подходу к предварительной подготовке емкости на основе долгосрочного прогнозирования, что не позволит вам воспользоваться всеми преимуществами облачной платформы.
Эффективность производительности — это способность рабочей нагрузки адаптироваться к изменению требований путем масштабирования до увеличения нагрузки, не влияя на взаимодействие с пользователем, и масштабирование до экономии ресурсов во время низкого спроса. Емкость играет центральную роль, но использование только предварительно подготовленных ресурсов может привести к проблемам производительности при высокой нагрузке и ненужных затратах во время низкой загрузки.
Вместо того, чтобы рассматривать производительность как послевысловную, сделайте его основным соображением с самого начала. Начните рано, даже если у вас нет строгих целевых показателей производительности, а затем протестируйте и уточните во время разработки. Эта непрерывная оптимизация, информированная реальным использованием, помогает предотвратить будущие проблемы и обеспечить согласованную производительность.
Хорошо запланированная стратегия помогает согласовать емкость ресурсов с бизнес-потребностями при минимизации отходов. После определения подхода используйте контрольный список эффективности производительности , чтобы проверить проект. Без упреждающей стратегии вы рискуете полагаться на статическое прогнозирование и отсутствуют все преимущества масштабируемой облачной инфраструктуры.
Согласование реалистичных целей
|
|
|---|
С точки зрения производительности идеально подходит для того, чтобы иметь четко определенные целевые показатели производительности для запуска процесса разработки. Чтобы задать эти целевые показатели, необходимо иметь хорошее представление о бизнес-требованиях и ожидаемом качестве обслуживания, которое, как ожидается, будет доставлена рабочая нагрузка. Определите ожидания в сотрудничестве с заинтересованными лицами бизнеса. Вместо того чтобы сосредоточиться только на технических метриках, определите допустимые последствия для взаимодействия с пользователем для ключевых потоков.
Существует циклическая зависимость. Вы не можете измерить то, что вы не определили, и вы не можете определить без измерения. Поэтому важно также измерять производительность рабочей нагрузки, пока вы не достигнете удовлетворительного определения допустимого порогового значения с помощью коллективного соглашения.
Существует надежная корреляция между целевыми показателями производительности и надежности, которые помогают определить качество обслуживания с точки зрения производительности, доступности и устойчивости. Без четкого определения сложно измерять, оповещать и тестировать производительность. После установки целевых объектов и определения фактических чисел с помощью тестирования с течением времени можно реализовать автоматизацию для непрерывного тестирования этих целевых объектов.
Соблюдайте рекомендации по определению целевых объектов на уровне макросов, даже если они приблизительные или в пределах диапазона.
| Подход | Преимущества |
|---|---|
| Подготовка к эффективному согласованию путем понимания технических параметров, изучения возможностей проектирования и применения экспериментальных результатов. Используйте исторические данные для выявления шаблонов использования и узких мест. Включите аналитические сведения из анализа рынка, отраслевых стандартов и экспертных данных для принятия решений. |
Вы можете принимать обоснованные решения на основе практических сведений. Целевые показатели производительности будут основаны на пользовательском интерфейсе, основанном на возможных, отраслевых рекомендациях и текущих тенденциях рынка. |
| Выравнивайте бизнес-владельцев по ожиданиям пользователей и стандартам производительности, учитывая инвестиционные уровни. Избегайте детализации на начальном этапе проектирования, сохраняя более широкий бизнес-контекст и планы роста. |
Вы будете избегать неправильных предположений, способствовать ясности и мотивации в команде, и принимать обоснованные решения по проектированию компромиссов. Он также обеспечивает учет целевых показателей производительности для будущих потребностей, выравнивая текущую работу с долгосрочными бизнес-целями. |
| Приоритет критически важных потоков в архитектуре на основе влияния на производительность. Определите диапазоны отказоустойчивости производительности для каждого потока, от идеального до неприемлемого. Оцените точки входа и выхода, учитывая частоту использования, важность и сложность. |
При приоритете потоков можно сосредоточить ресурсы на критически важных областях, которые оказывают наибольшее влияние на результаты работы пользователей и бизнеса. Разбив систему на части и зависимости, вы понимаете функцию каждого компонента и влияете на производительность. Вы также узнаете о потенциальных проблемах. Это помогает установить базовые показатели производительности и оптимизацию диска. |
| Начните разработку модели производительности, которая учитывает шаблоны использования, влияние на бизнес и операционные затраты, чтобы вычислить начальные целевые показатели производительности. Используйте отраслевые стандарты для определения и измерения ключевых метрик, а также оценки спроса и предложения в рамках бизнес-ограничений при учете будущего роста. Рассматривать это как итеративный процесс и уточнять целевые объекты, информированные реальными наблюдениями и метриками, собранными из запущенного решения, во время тестирования и рабочей среды. Определите приоритеты тестовых случаев, которые дают значимые аналитические сведения об использовании в течение всего жизненного цикла приложения. |
Модель производительности помогает в планировании и оптимизации стратегических ресурсов, поддерживает тестирование с помощью отраслевых стандартов и гарантирует, что цели производительности остаются адаптируемыми и актуальными с течением времени. На основе этих изменяющихся целевых показателей вы сможете выполнять точное планирование емкости и устанавливать базовые показатели производительности, которые остаются актуальными на протяжении всего жизненного цикла решения. |
Проектирование для удовлетворения требований к емкости
|
|
|---|
Важно заблаговременно измерять производительность. Измерение производительности включает измерение базовых показателей и предварительное понимание того, какие компоненты системы, скорее всего, могут вызвать проблемы. Ее можно достичь, не выполняя полный тест производительности или с помощью детализированной оптимизации. Выполнив эти начальные шаги, вы создайте основу для эффективного управления производительностью в начале жизненного цикла разработки.
Изучите систему в целом, а не сосредоточьтесь на отдельных компонентах. Избегайте тонкой настройки на этом этапе. Повышение детализации производительности приводит к компромиссам в других областях. По мере выполнения жизненного цикла и начала тестирования принятия пользователей или перехода к рабочей среде можно быстро определить, какие области требуют дальнейшей оптимизации.
| Подход | Преимущества |
|---|---|
| Оцените потребности динамического масштабирования для приоритетных потоков на основе требований к использованию. Изучите ожидаемые шаблоны спроса и определите, как эластично каждый поток должен соответствовать этим требованиям. | Вы можете определить требования к масштабируемости для существующих компонентов, которые требуют больше емкости и областей, в которых требуются дополнительные компоненты для распределения нагрузки. |
| Выберите нужные ресурсы и укажите их в стеке технологий, что позволяет соответствовать целям производительности. Рассмотрим функции, которые могут соответствовать требованиям к масштабируемости. |
Общая система будет выполняться в соответствии с определенными целевыми объектами. Вы можете использовать встроенные функции, которые автоматически масштабироваться при необходимости. Это также помогает избежать чрезмерной подготовки, экономии затрат при обработке изменений спроса. |
| Планирование емкости на основе модели производительности и возможностей выбранных ресурсов. Используйте методы прогнозного моделирования для прогнозирования ожидаемых изменений в емкости. |
Система сможет соответствовать целям производительности, оставаясь готовым к будущему спросу. Прогнозное моделирование помогает заранее планировать, избегая нехватки ресурсов или чрезмерной подготовки, что повышает надежность и эффективность затрат. |
| Реализуйте подтверждение концепции и проверьте предлагаемые варианты проектирования в соответствии с техническими требованиями. | Подтверждение концепции помогает проверить, может ли проект соответствовать целевым показателям производительности и ожидаемой нагрузке. |
Достижение и поддержание производительности
|
|
|---|
Разработка не является однократной попыткой. Это текущий процесс. Ожидайте изменения в производительности по мере изменения функций. Существует дисперсии в шаблонах и профилях пользователей, даже изменения в оптимизации в других компонентах Azure Well-Architected. Любые изменения могут напрягать ресурсы рабочей нагрузки.
Защитите систему от скольжения в целевых показателях производительности. Протестируйте производительность системы в рабочей среде с реальной нагрузкой и имитируйте нагрузку с автоматизированным тестированием до рабочей среды. В обоих случаях для проверки следует использовать методики мониторинга.
Имейте в виду, что целевые показатели производительности зависят от времени в ответ на изменения. Обновите модель производительности на основе проверенных и отслеживаемых метрик. Четко указывает на увеличение, уменьшение или отсутствие влияния на производительность потоков.
Всегда быть готовым пересмотреть и сбросить ожидания с заинтересованными лицами бизнеса.
| Подход | Преимущества |
|---|---|
| Определите стратегию тестирования производительности. Проводите различные типы тестов, включая вручную, низкоуровневые тесты, чтобы пересмотреть тесты. Добавьте регулярные тесты производительности в конвейеры с помощью средств, которые хорошо работают с ними. |
Вы можете обеспечить эффективное выделение ресурсов и проверить метрики в соответствии с планированием емкости. Автоматизированные стандартные тесты производительности помогают последовательно оценивать ключевые факторы, такие как задержка, стресс и загрузка емкости, что упрощает обнаружение проблем в начале и стабильной производительности с течением времени. |
| Формализация тестов производительности в качестве шлюзов качества. | Эти контрольные точки убедитесь, что каждый этап развертывания соответствует стандартам производительности перед переходом вперед. Они помогают ловить проблемы рано и позволяют принимать качественные решения. Например, блокировка выпуска, если производительность ниже ожиданий. |
| Настройте процесс мониторинга производительности, который отслеживает как комплексные бизнес-транзакции, так и технические метрики, такие как ЦП, задержка и запросы в секунду. Убедитесь, что в рабочей среде используются реальные и искусственные транзакции. Настройка оповещений мониторинга о регрессии производительности. |
Отслеживая все части системы, вы получаете четкое представление и сможете быстро обнаруживать проблемы как в инфраструктуре, так и в приложении. Это поможет вам точно настроить ресурсы для поддержания стандартов производительности, а также отслеживания хода выполнения или выявления проблем на ранних этапах. |
| Просмотрите результаты теста производительности и тщательно отслеживайте данные по мере увеличения использования, а данные накапливаются с системой в рабочей среде. Определите приоритет действий, которые устраняют снижение производительности и добавляют их в невыполненную работу для запланированного выполнения. |
Использование данных для отслеживания и сравнения тенденций производительности помогает принимать обоснованные решения по оптимизации и перехватывать проблемы раньше, прежде чем они влияют на взаимодействие с пользователем. Это также гарантирует, что вы не переоптимизировали систему, которая уже находится в емкости. |
| Изучите шаблоны проектирования, которые могут точно настроить производительность в стеке технологий, учитывая приложение и базовые уровни вычислений и данных. | Вы можете устранить узкие места и реализовать компенсирующие элементы управления, чтобы уменьшить задержку и системную нагрузку. |
| Создайте навыки программирования с акцентом на производительность и следуйте стандартам, которые способствуют эффективному созданию шаблонов программирования. | Хорошо написанный, высокопроизводительный код ускоряет тестирование путем сокращения проблем и помогает избежать повторной работы при сохранении согласованности кода. |
Оптимизация для долгосрочного улучшения
|
|
|---|
Начальные целевые показатели производительности предназначены для обеспечения разумного взаимодействия с пользователем в известных ограничениях. По мере развития системы переоценка этих целевых объектов с использованием реальных производственных данных для лучшего понимания шаблонов использования, изменений платформы и потенциальных выгод, обеспечивая хорошое время и эффективность усилий по оптимизации. Часто рекомендуется отложить основные оптимизации до тех пор, пока эти данные не будут доступны, чтобы избежать преждевременного принятия решений.
Настройка производительности — это непрерывный цикл мониторинга, оптимизации, тестирования и развертывания. Улучшения эффективности могут снизить использование ресурсов, иногда что приводит к чрезмерной подготовке. Затем эту дополнительную емкость можно использовать для повышения надежности, снижения затрат или поддержки новых функций без добавления инфраструктуры.
| Подход | Преимущества |
|---|---|
| Отложите выделенное время для оптимизации производительности в качестве регулярной практики на протяжении всего жизненного цикла разработки. | В культуре, ориентированной на производительность, этот подход усиливает подотчетность, где команда активно отслеживает и постоянно улучшает производительность системы. |
| Пересмотр нефункциональных требований и создание новых целевых объектов путем анализа исторических тенденций в рабочей среде для улучшения архитектуры с улучшенными шаблонами и компонентами дизайна. | Новые конструкции и компоненты, такие как кэширование или CDN, могут оптимизировать систему и улучшить взаимодействие с пользователем. |
| Получайте текущие и оставайтесь в курсе технологических инноваций, которые могут повысить производительность. Воспользуйтесь новыми версиями, выпущенными для зависимых платформ и библиотек. Аналогичным образом используйте новые функции для ресурсов платформы при их обновлении и исправлении. |
Целевые показатели производительности обеспечивают обоснование внедрения новых технологий. Код, который, возможно, был медленным в прошлом, может стать быстрее с этими обновлениями. Вы также хотите знать, как некоторые обновления негативно влияют на производительность. |