Я использую jmeter для генерации теста производительности, чтобы быть кратким и понятным, я читаю исходные данные из файла json, у меня есть одна группа потоков, в которой после чтения данных я рандомизирую определенные значения, чтобы предотвратить дублирование данныхкогда мне это нужно, тогда я передаю окончательные данные в конечную точку, используя переменные, в результате получается тело json, которое получает конечная точка, и в основном генерирует новую транзакцию в базе данных. Также я добавил постоянный таймер, чтобы добавить 7 секундную задержку между запросами, с тестовой продолжительностью 10 минут и без увеличения скорости, я рассчитал количество запросов в секунду следующим образом:
1 минута имеет 60 секунд, и у меня естьзадержка 7 секунд на запрос, тогда логично сказать, что каждую минуту я посылаю примерно 8,5 запросов в минуту, это мой расчет (60/7) = 8,5 теперь, если тест длится 10 минут, то я умножаю (8,5 *10) = 85, что дает мне в общей сложности 85 транзакций за 10 минут, поэтому я смогу увидеть точно такое же количество транзакций, созданных в базе данных после завершения теста.
Это верно, когда яработает 10-20-40 пользователей, после запуска нагрузочного теста я запрашиваю базу данных и получаю точно такое же количество транзакций, однако, по мере увеличения количества пользователей в группе потоков, это больше не происходит, например, если я установил 1000пользователи, я должен быть в состоянии генерировать 8500 транзакций за 10 минут, но это не так, БД создает только около 5,1 тыс. трансдействия.
Что происходит, что не так? Почему изначально он работает так, как ожидалось, а по мере увеличения количества пользователей - нет? Я могу предоставить больше информации, если это необходимо. Пожалуйста, помогите.