Привет всем, я брат Тиан
Во время собеседования интервьюер неизбежно спросит, какой самый высокий показатель QPS среди проектов, над которыми вы работали? А что насчет ТПС? ПВ, УФ, ДАВ...
Многим студентам могут быть непонятны приведенные выше профессиональные «сокращенные» термины. Было бы очень неловко, если бы их действительно спросили о них во время собеседования.
QPS Queries Per Second
это скорость запросов в секунду ,дасерверКоличество соответствующих запросов в секунду,дак конкретному серверу запросовв течение указанного времениПоказатель того, какой объем трафика обрабатывается, То есть количество запросов ответа в секунду, что является максимальной пропускной способностью.
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),Количество параллелизма,время ответа
связь
QPS(TPS)=Количество параллелизма/среднийвремя ответа
Пропускная способность системы обычно имеет QPS (TPS), Количество параллелизма Определяется двумя факторами,Каждая система имеет относительное предельное значение для этих двух значений.,Под давлением доступа к сценариям приложений,Пока определенный элемент достигает наивысшего значения в системе,Пропускная способность системы не может увеличиться,Если давление продолжает расти,Вместо этого пропускная способность системы уменьшится.,Причина в том, что система перегружена.,переключение контекста,Память и другие виды потребления приводят к снижению производительности системы.
PV(Page Просмотр): просмотры страниц, то есть просмотры страниц или клики, которые рассчитываются каждый раз, когда пользователь обновляет страницу. Вы можете получить статистику по журналам доступа сервиса за один день.
UV(Unique Посетитель: независимый посетитель, подсчитывающий количество пользователей, посетивших определенный сайт в течение одного дня. Журналы доступа сервиса за один день могут быть собраны и дедуплицированы на основе уникального идентификатора пользователя. Время ответа (RT): Время ответа — это время, необходимое системе для ответа на запрос. Обычно берется среднее время ответа. Может использоваться через Интернет, например Nginx и Apache. Сервер получает.
DAU(Daily Active Пользователь), количество активных пользователей в день. Часто используется для отображения работы веб-сайтов, интернет-приложений или онлайн-игр. DAU обычно подсчитывает количество пользователей, которые вошли в систему или использовали определенный продукт в течение одного дня (статистического дня) (исключая пользователей, которые входили в систему неоднократно), что аналогично концепции UV.
MAU(Month Active Пользователь): количество активных пользователей в месяц. Это количество активных пользователей веб-сайтов, приложений и т. д. в месяц после дедупликации.
При проектировании системы нам необходимо учитывать влияние вычислений ЦП, операций ввода-вывода, факторов реагирования внешней системы и предварительную оценку производительности системы.
И обычно,мы сталкиваемся со спросом,QPS, которое мы оценили,Количество Помимо параллелизма, есть еще одно измерение: японский пв.
Наблюдая за журналами доступа системы, мы обнаружили, что при большом количестве пользователей трафик доступа в один и тот же период времени в каждый период времени практически одинаков. Как каждое утро рабочего дня. Пока мы можем получить карту ежедневного трафика и количество запросов в секунду, мы можем рассчитать ежедневный трафик.
Обычные технические методы:
На какие свойства следует обращать внимание при тестировании производительности программного обеспечения?
Прежде всего, цель разработки программного обеспечения состоит в том, чтобы пользователи могли его использовать. Давайте сначала проанализируем с точки зрения пользователя, на что пользователям следует обратить внимание.
Для пользователей время, которое проходит с момента нажатия кнопки, ссылки или выдачи инструкции до момента, когда система отображает результаты в форме, воспринимаемой пользователем, представляет собой интуитивное впечатление пользователя о производительности программного обеспечения. Это то, что мы называем временем отклика. Когда время отклика небольшое, пользовательский опыт очень хороший. Конечно, время отклика пользователя включает в себя личные субъективные факторы и объективное время отклика. Сделайте его лучше. Объедините эти две части, чтобы добиться наилучшего пользовательского опыта. Например: когда пользователь запрашивает большой объем данных, мы можем отобразить извлеченные данные пользователю и продолжить извлечение данных, пока пользователь наблюдает. В это время пользователь не знает, что мы делаем в фоновом режиме.
Пользователи обращают внимание на соответствующее время пользовательских операций.
Во-вторых, мы рассматриваем моменты производительности, которые требуют внимания с точки зрения администратора.
1. Время отклика 2. Разумно ли использование ресурсов сервера 3. Разумно ли использование ресурсов сервера приложений и базы данных 4. Можно ли расширить систему 5. Максимальное количество пользователей, которое может поддерживать система, и какое максимальный объем бизнес-обработки системы. 6. Возможности производительности системы. Где существуют узкие места? 7. Какое оборудование можно заменить для повышения производительности? 8. Может ли система поддерживать круглосуточный бизнес-доступ?
Опять же, рассмотрим это с точки зрения разработчика (дизайнера).
1. Разумен ли архитектурный проект?
2. Разумна ли конструкция базы данных?
3. Есть ли у кода проблемы с производительностью?
4. Есть ли в системе необоснованное использование памяти?
5. Есть ли в системе необоснованный метод синхронизации потоков?
6. Существует ли в системе необоснованная конкуренция за ресурсы.