Согласование реалистичных целевых показателей производительности
|
---|
С точки зрения производительности идеально подходит для того, чтобы иметь четко определенные целевые показатели производительности для запуска процесса разработки. Чтобы задать эти целевые показатели, необходимо иметь хорошее представление о бизнес-требованиях и ожидаемом качестве обслуживания, которое, как ожидается, будет доставлена рабочая нагрузка. Определите ожидания в сотрудничестве с заинтересованными лицами бизнеса. Вместо того чтобы сосредоточиться только на технических метриках, определите допустимые последствия для взаимодействия с пользователем для ключевых потоков.
Существует циклическая зависимость. Вы не можете измерить то, что вы не определили, и вы не можете определить без измерения. Поэтому важно также измерять производительность рабочей нагрузки, пока вы не достигнете удовлетворительного определения допустимого порогового значения с помощью коллективного соглашения.
Существует надежная корреляция между целевыми показателями производительности и надежности, которые помогают определить качество обслуживания с точки зрения производительности, доступности и устойчивости. Без четкого определения сложно измерять, оповещать и тестировать производительность. После установки целевых объектов и определения фактических чисел с помощью тестирования с течением времени можно реализовать автоматизацию для непрерывного тестирования этих целевых объектов.
Соблюдайте рекомендации по определению целевых объектов на уровне макросов, даже если они приблизительные или в пределах диапазона.
Пример сценария
Contoso Bike — это прямая торговая марка потребительских велосипедов в США. Их команда разработчиков начала работать над созданием приложения в поддержку планового обслуживания мобильного велосипеда Contoso. В настоящее время приложение находится на этапе подтверждения концепции. Специалисты будут использовать мобильное приложение для управления расписанием и рабочими заказами, а также принимать платежи. Веб-сайт будет использоваться для клиентов для планирования обслуживания. Веб-приложение, мобильное приложение и внутренний API, скорее всего, будут размещаться в службе приложение Azure.
Подготовка к согласованию целевых показателей производительности
Подготовьтесь к эффективному согласованию путем понимания технических концепций, изучения возможностей проектирования с доступной инфраструктурой и использования результатов конкретных экспериментов, если они доступны. Используйте исторические данные, чтобы получить представление о шаблонах использования и узких местах. Результаты внешних факторов, таких как анализ рынка, эксперты и отраслевые стандарты.
Вы можете принимать обоснованные решения на основе практических сведений.
Целевые показатели производительности ориентированы на взаимодействие с пользователем, основанное на возможных, отраслевых рекомендациях и текущих тенденциях рынка.
Задача Компании Contoso
- В обсуждениях о приложении с бизнес-заинтересованными лицами производительность пока не обсуждалась.
- Команда разработчиков является новой для Azure, поэтому у них нет опыта работы с возможностями производительности и масштабирования платформы.
- Без указания заинтересованных лиц и практических знаний о том, что возможно, команда обеспокоена тем, что им придется развертывать инфраструктуру для тестирования только для последующего восстановления.
- Команда также обеспокоена тем, что никто не будет готов говорить о реалистичных целевых показателях производительности, когда они встречаются далее.
Применение подхода и результатов
- Бизнес-аналитики и разработчики Компании Contoso обсуждают свои проблемы и разрабатывают план: бизнес-аналитики будут исследовать ожидания производительности с помощью конкурентного анализа и неформального опроса, а команда разработчиков изучит возможности и варианты различных ценовых категорий Azure.
- Команды перегруппируются с заинтересованными лицами бизнеса, внося данные, которые они компилировали и используют данные в качестве основы для их переговоров о целевых показателях производительности. В ходе обсуждений о потенциальных возможностях производительности и связанных затратах все стороны оставляют себя хорошо использовать Служба приложений для рабочей нагрузки.
Эффективное согласование целевых показателей производительности
Сотрудничайте с владельцами бизнеса, чтобы понять обещания пользователей с точки зрения качества и соответствия нормативным требованиям, если это применимо. Поддерживайте широкую перспективу и избегайте детализации на этом этапе. Будьте явным образом в том, что представляет приемлемые показатели производительности, основанные на инвестициях, и понять бизнес-контекст и ожидаемый рост.
При принятии этого подхода вы будете избегать допущений, которые могут не соответствовать бизнес-целям. Она также обеспечивает ясность и мотивацию в рабочей группе.
Наличие бизнес-контекста для функциональных и нефункциональных требований может выявить изменения проектирования в других основных компонентах Azure Well-Architected и помочь вам сделать обоснованные компромиссы.
Определение параметров на ранних этапах помогает избежать затрат, связанных с потенциальными изменениями решения позже; он позволяет обеспечить, чтобы целевые показатели производительности охватывали будущие проекции, чтобы вы могли выровнять текущие усилия с долгосрочными целями.
Задача Компании Contoso
- Команда архитектуры имеет грубые идеи о том, что может быть приемлемым, но никаких особенностей еще не было. Архитекторы чувствуют себя в целом, что они должны быть в состоянии избежать повторной работы с их выбором платформы приложений, но они будут чувствовать себя более уверенно с немного более конкретной, чем то, что они получили до сих пор.
- До этого момента обсуждения производительности были расплывчатыми, с заявлениями, как: "Веб-сайт должен быть быстрым".
- Без немного более конкретности архитекторы беспокоятся, что они могут перепроектировать дизайн для производительности, или сталкиваются с задержками, которые отталкивают выпуск в рабочую среду.
Применение подхода и результатов
- Деловые партнеры и техническая группа встречаются, чтобы получить консенсус по общим, но реалистичным целям и некоторым абсолютным ограничениям, которые необходимо избежать. С их помощью архитекторы могут сделать доказательство концепций в рамках их первоначального проектирования, чтобы получить широкое соглашение на платформе приложений, и представить некоторые результаты для производительности и ценообразования.
- Одним из результатов этого собрания является знание того, что Contoso Bike планирует работать только на юго-западе США в течение первого года, но будет расширяться по всей стране в течение двух лет. Эти сведения будут учитываться в проектировании.
Проектирование с фокусом на потоке
Определите потоки рабочей нагрузки и определите приоритеты потоков на схеме архитектуры. Определите допустимость производительности каждого потока в диапазоне от стремленности до неприемлемой производительности. Оцените точки входа и выхода для каждого потока, учитывая критическость пути, частоту использования и интенсивность архитектуры.
При приоритете потоков можно сосредоточить ресурсы на критически важных областях, которые оказывают наибольшее влияние на результаты работы пользователей и бизнеса.
Разбив систему на части и зависимости, вы понимаете функцию каждого компонента и влияете на производительность. Вы также узнаете о потенциальных проблемах.
Это помогает установить базовые показатели производительности и оптимизацию диска.
Задача Компании Contoso
- До сих пор техническая группа работала с заинтересованными лицами для выявления высокоуровневых целевых показателей производительности, но пока не сосредоточена на отдельных потоках. Чтобы команда разработчиков могла глубже разобраться в потоках, таких как указатель службы и потоки платежей, им потребуется понять требования к этим потокам.
- Без этих конкретных требований проектирование рискует при выделении ресурсов для ключевых потоков или переопределении ресурсов для потоков с низким приоритетом.
Применение подхода и результатов
- После просмотра потоков пользователей с бизнесом команда архитектуры теперь имеет очень конкретные целевые объекты для каждого потока. Декомпозиция рабочей нагрузки теперь учитывает желающий к неприемлемым диапазону для каждого потока.
- Архитекторы будут стремиться к попаданию в желаемые цели с их дизайном, чтобы позволить системе развиваться с течением времени с дополнительными функциями, в то время как компрометировать некоторые степени, чтобы сохранить затраты и другие нефункциональные требования под контролем.
- Команда может завершить проектирование вокруг целевых объектов, которые были согласованы, и теперь команда реализации будет отвечать за обеспечение соблюдения этих ограничений и повышение каких-либо проблем, если они не могут быть достигнуты с помощью проектирования, с которым они работают.