Взаимосвязь между QPS, TPS, количеством одновременных пользователей и пропускной способностью
Взаимосвязь между QPS, TPS, количеством одновременных пользователей и пропускной способностью

Привет всем, я брат Тиан

Во время собеседования интервьюер неизбежно спросит, какой самый высокий показатель QPS среди проектов, над которыми вы работали? А что насчет ТПС? ПВ, УФ, ДАВ...

Многим студентам могут быть непонятны приведенные выше профессиональные «сокращенные» термины. Было бы очень неловко, если бы их действительно спросили о них во время собеседования.

QPS

QPS Queries Per Second это скорость запросов в секунду ,дасерверКоличество соответствующих запросов в секунду,дак конкретному серверу запросовв течение указанного времениПоказатель того, какой объем трафика обрабатывается, То есть количество запросов ответа в секунду, что является максимальной пропускной способностью.

TPS

TPS Transactions Per Second Это количество транзакций в секунду. Транзакция — это процесс, в котором клиент отправляет запрос серверу, а сервер отвечает. Клиент начинает отсчет времени при отправке запроса и заканчивает отсчет времени после получения ответа сервера для расчета использованного времени и количества завершенных транзакций.

Разница между QPS и TPS

Мое личное понимание заключается в следующем:

1. Tps — количество транзакций, обрабатываемых в секунду, в том числе

1) Пользователь запрашивает сервер 2) Собственная внутренняя обработка сервера 3) Сервер возвращает пользователю

Эти три процесса могут выполнить N из этих трех процессов в секунду, а Tps равно N;

2. Qps по сути похож на Tps, но разница в том, что посещение страницы формирует Tps, но запрос страницы может генерировать несколько запросов к серверу, и сервер может учитывать эти запросы в «QPS».

пример

Например: при доступе к странице запросится сервер 3 раза, и как только он будет выпущен, будет сгенерировано «T» и 3 «Q».

Например: Большой едок может съесть 10 приготовленных на пару булочек за одну секунду, а девушка может съесть 1 приготовленную на пару булочку за 0,1 секунды. Они одинаковые? Ответ — нет, потому что эта девочка не может съесть 10 булочек за одну секунду. Ей может потребоваться много времени. На данный момент большой едок эквивалентен TPS, а эта девушка - QPS. Хотя они похожи, на самом деле они разные.

Количество параллелизма

Количество параллелизма (параллелизма): относится к запросам, которые система может обрабатывать одновременно, что также отражает нагрузочную способность системы. Это значение можно получить, проанализировав журнал доступа к машине в течение 1 секунды.

Пропускная способность

Пропускная способность:Пропускная способностьда Относится к запросам, обрабатываемым системой за единицу времени.количество,TPS и QPS — общие количественные показатели пропускной способности.

Коэффициенты пропускной способности системы

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

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

Важные параметры

QPS(TPS),Количество параллелизма,время ответа

  1. QPS (TPS): количество запросов/транзакций в секунду.
  2. Количество параллелизма: количество запросов/транзакций, обрабатываемых системой одновременно.
  3. Время ответа: обычно среднее время ответа

связь

QPS(TPS)=Количество параллелизма/среднийвремя ответа

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

PV

PV(Page Просмотр): просмотры страниц, то есть просмотры страниц или клики, которые рассчитываются каждый раз, когда пользователь обновляет страницу. Вы можете получить статистику по журналам доступа сервиса за один день.

UV

UV(Unique Посетитель: независимый посетитель, подсчитывающий количество пользователей, посетивших определенный сайт в течение одного дня. Журналы доступа сервиса за один день могут быть собраны и дедуплицированы на основе уникального идентификатора пользователя. Время ответа (RT): Время ответа — это время, необходимое системе для ответа на запрос. Обычно берется среднее время ответа. Может использоваться через Интернет, например Nginx и Apache. Сервер получает.

DAU

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

MAU

MAU(Month Active Пользователь): количество активных пользователей в месяц. Это количество активных пользователей веб-сайтов, приложений и т. д. в месяц после дедупликации.

Оценка пропускной способности системы

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

И обычно,мы сталкиваемся со спросом,QPS, которое мы оценили,Количество Помимо параллелизма, есть еще одно измерение: японский пв.

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

Обычные технические методы:

  1. Найдите максимальную TPS и дневную PV системы.,Эти два фактора имеют относительно стабильную связь (за исключением влияния праздников и сезонных факторов).
  2. С помощью стресс-тестирования или эмпирических оценок,Получите самый высокий TPS,Затем свяжитесь с 1-м контактом.,Рассчитайте максимальную дневную пропускную способность системы. Китайский B2B и Taobao сталкиваются с разными группами клиентов,Сетевое поведение этих двух групп клиентов не применимо.,Соотношение TPS и PVсвязь у них также различно.
Основные понятия и формулы расчета тестирования производительности программного обеспечения.
Проблемы с производительностью программного обеспечения

На какие свойства следует обращать внимание при тестировании производительности программного обеспечения?

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

Для пользователей время, которое проходит с момента нажатия кнопки, ссылки или выдачи инструкции до момента, когда система отображает результаты в форме, воспринимаемой пользователем, представляет собой интуитивное впечатление пользователя о производительности программного обеспечения. Это то, что мы называем временем отклика. Когда время отклика небольшое, пользовательский опыт очень хороший. Конечно, время отклика пользователя включает в себя личные субъективные факторы и объективное время отклика. Сделайте его лучше. Объедините эти две части, чтобы добиться наилучшего пользовательского опыта. Например: когда пользователь запрашивает большой объем данных, мы можем отобразить извлеченные данные пользователю и продолжить извлечение данных, пока пользователь наблюдает. В это время пользователь не знает, что мы делаем в фоновом режиме.

Пользователи обращают внимание на соответствующее время пользовательских операций.

Во-вторых, мы рассматриваем моменты производительности, которые требуют внимания с точки зрения администратора.

1. Время отклика 2. Разумно ли использование ресурсов сервера 3. Разумно ли использование ресурсов сервера приложений и базы данных 4. Можно ли расширить систему 5. Максимальное количество пользователей, которое может поддерживать система, и какое максимальный объем бизнес-обработки системы. 6. Возможности производительности системы. Где существуют узкие места? 7. Какое оборудование можно заменить для повышения производительности? 8. Может ли система поддерживать круглосуточный бизнес-доступ?

Опять же, рассмотрим это с точки зрения разработчика (дизайнера).

1. Разумен ли архитектурный проект?

2. Разумна ли конструкция базы данных?

3. Есть ли у кода проблемы с производительностью?

4. Есть ли в системе необоснованное использование памяти?

5. Есть ли в системе необоснованный метод синхронизации потоков?

6. Существует ли в системе необоснованная конкуренция за ресурсы.

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose