Вопрос проверяет понимание метрики TPS (Transactions Per Second) и её влияния на оценку производительности и масштабируемости системы.
TPS (Transactions Per Second) — это метрика, измеряющая количество завершённых транзакций, которые система может обработать за одну секунду. Транзакция в данном контексте — это логически завершённая операция, например, запрос к базе данных, отправка HTTP-запроса или выполнение бизнес-процесса.
Высокий TPS указывает на то, что система способна обрабатывать большое количество запросов одновременно, что критично для высоконагруженных приложений (например, интернет-магазинов, банковских систем). Низкий TPS может сигнализировать о проблемах с производительностью, таких как медленные запросы к базе данных, неэффективные алгоритмы или недостаточные ресурсы сервера.
Допустим, система обработала 5000 транзакций за 10 секунд. Тогда TPS = 5000 / 10 = 500. Это означает, что в среднем система обрабатывает 500 транзакций в секунду.
const http = require('http');
const startTime = Date.now();
let completed = 0;
const totalRequests = 1000;
for (let i = 0; i < totalRequests; i++) {
http.get('http://example.com/api', (res) => {
completed++;
if (completed === totalRequests) {
const elapsed = (Date.now() - startTime) / 1000;
console.log(`TPS: ${totalRequests / elapsed}`);
}
});
}Этот код отправляет 1000 запросов к API и вычисляет TPS по времени выполнения всех запросов.
TPS — ключевая метрика для оценки производительности и масштабируемости системы. Её следует использовать при нагрузочном тестировании, чтобы выявить узкие места и убедиться, что система выдерживает ожидаемую нагрузку.