Практические методы установления базовых показателей тестирования производительности
Практические методы установления базовых показателей тестирования производительности

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

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

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

Как понять базовые показатели производительности

Базовый уровень по-английски — baseline, что переводится как базовый уровень. Простое понимание его значения таково: предположим, что мы проводим какой-то эксперимент и результаты эксперимента улучшаются. Объектом сравнения этого улучшения является так называемый базовый уровень в математике. , базовый уровень можно понимать как эталон.

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

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

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

Базовый уровень можно рассматривать как более формальный стандарт. После того, как первоначальный базовый уровень установлен, данные, полученные в результате каждого последующего теста, необходимо фиксировать (есть различия) до тех пор, пока данные не сформируются в пределах статистического интервала (основной версии или квартала). ) Новая базовая линия. Таким образом, в области тестирования производительности базовый уровень производительности имеет следующие характеристики:

  • производительность Базовый уровень можетНепосредственно представляет собой результативность текущего этапа.(Это выше или ниже?);
  • производительностьбазовый уровеньПоказатели должны напрямую отражать тенденции производительности.(Изменения тренда зависят отданныестатистический интервал);
  • производительностьбазовый уровеньОтображаемая тенденция изменений должна быть непрерывной, а показатели должны быть легко получены путем тестирования.(Показатели должны быть признаны всеми);
  • производительностьбазовый уровеньЭто всего лишь отображение данных, и чтобы сделать выводы, необходимо проанализировать меняющиеся тенденции.(Измерениеданные Есть ошибка,Должны быть положительные и отрицательные значения в разумных пределах);

Какую проблему решает базовый план производительности?

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

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

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

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

Практические методы установления базовых показателей производительности

Чтобы установить базовые показатели производительности, вот моя собственная практика:

1. Выберите относительно стабильный и основной бизнес-модуль (например, бизнес по логистике заказов на поиск продуктов в электронной коммерции);

2. Покрытие тестовых сценариев покрывается пакетами в соответствии с приоритетом (например, приоритет отдается уровню P0, а затем постепенно покрывается P1/P2);

3. Выберите индикаторы, которые могут наглядно представить результаты изменений производительности и достичь консенсуса внутри команды (например, QPS, TPS, 99RT и использование ресурсов соответствующих сервисов);

4. Скрипты и данные, соответствующие сценарию покрытия, должны обновляться в режиме реального времени после итерации (отслеживать изменения на этапе кодирования, своевременно проводить совместную отладку и обновлять соответствующие тестовые данные);

5. Действия по выполнению теста производительности должны выполняться автоматически и регулярно, насколько это возможно (если во время автоматического выполнения возникают проблемы или результаты теста являются ненормальными, их можно выполнить вручную и наблюдать в режиме реального времени. Аномальные данные и журналы также должны быть сохранены). быстро записывается для облегчения последующего исследования и оптимизации);

6. Результаты выполнения теста производительности лучше всего записывать и отображать посредством автоматической записи + ручной настройки (отображение может отображаться в виде круговых диаграмм/линейных диаграмм/столбчатых диаграмм и т. д., а также предусмотрены функции групповой фильтрации и сравнения). );

7. В результатах каждого теста производительности будет определенная ошибка (при условии, что все условия остаются неизменными, также будут ошибки в результатах каждого выполнения, причем положительные и отрицательные значения ошибки могут быть 1%-5%);

8. Отображение базового уровня производительности и статистический интервал могут отображаться в соответствии с различными измерениями, такими как номер версии и квартал (если бизнес сложный и команда большая, можно добавить отображение и фильтрацию элементов бизнес-домена или даже BU);

9. Первоначальная версия базового плана производительности может быть основана на результатах большой итерации версии или знакового проекта, а последующие обновления базового плана производительности будут изменены и скорректированы в зависимости от конкретных обстоятельств (например, значительных изменений в бизнес-требованиях). реконструкция системы);

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

boy illustration
Учебное пособие по Jetpack Compose для начинающих, базовые элементы управления и макет
boy illustration
Код js веб-страницы, фон частицы, код спецэффектов
boy illustration
【новый! Суперподробное】Полное руководство по свойствам компонентов Figma.
boy illustration
🎉Обязательно к прочтению новичкам: полное руководство по написанию мини-программ WeChat с использованием программного обеспечения Cursor.
boy illustration
[Забавный проект Docker] VoceChat — еще одно приложение для мгновенного чата (IM)! Может быть встроен в любую веб-страницу!
boy illustration
Как реализовать переход по странице в HTML (html переходит на указанную страницу)
boy illustration
Как решить проблему зависания и низкой скорости при установке зависимостей с помощью npm. Существуют ли доступные источники npm, которые могут решить эту проблему?
boy illustration
Серия From Zero to Fun: Uni-App WeChat Payment Practice WeChat авторизует вход в систему и украшает страницу заказа, создает интерфейс заказа и инициирует запрос заказа
boy illustration
Серия uni-app: uni.navigateЧтобы передать скачок значения
boy illustration
Апплет WeChat настраивает верхнюю панель навигации и адаптируется к различным моделям.
boy illustration
JS-время конвертации
boy illustration
Обеспечьте бесперебойную работу ChromeDriver 125: советы по решению проблемы chromedriver.exe не найдены
boy illustration
Поле комментария, щелчок мышью, специальные эффекты, js-код
boy illustration
Объект массива перемещения объекта JS
boy illustration
Как открыть разрешение на позиционирование апплета WeChat_Как использовать WeChat для определения местонахождения друзей
boy illustration
Я даю вам два набора из 18 простых в использовании фонов холста Power BI, так что вам больше не придется возиться с цветами!
boy illustration
Получить текущее время в js_Как динамически отображать дату и время в js
boy illustration
Вам необходимо изучить сочетания клавиш vsCode для форматирования и организации кода, чтобы вам больше не приходилось настраивать формат вручную.
boy illustration
У ChatGPT большое обновление. Всего за 45 минут пресс-конференция показывает, что OpenAI сделал еще один шаг вперед.
boy illustration
Copilot облачной разработки — упрощение разработки
boy illustration
Микросборка xChatGPT с низким кодом, создание апплета чат-бота с искусственным интеллектом за пять шагов
boy illustration
CUDA Out of Memory: идеальное решение проблемы нехватки памяти CUDA
boy illustration
Анализ кластеризации отдельных ячеек, который должен освоить каждый&MarkerгенетическийВизуализация
boy illustration
vLLM: мощный инструмент для ускорения вывода ИИ
boy illustration
CodeGeeX: мощный инструмент генерации кода искусственного интеллекта, который можно использовать бесплатно в дополнение к второму пилоту.
boy illustration
Машинное обучение Реальный бой LightGBM + настройка параметров случайного поиска: точность 96,67%
boy illustration
Бесшовная интеграция, мгновенный интеллект [1]: платформа больших моделей Dify-LLM, интеграция без кодирования и встраивание в сторонние системы, более 42 тысяч звезд, чтобы стать свидетелями эксклюзивных интеллектуальных решений.
boy illustration
LM Studio для создания локальных больших моделей
boy illustration
Как определить количество слоев и нейронов скрытых слоев нейронной сети?
boy illustration
[Отслеживание целей] Подробное объяснение ByteTrack и детали кода