Система:
У меня есть следующие настройки JMeter для распределенного тестирования без графического интерфейса пользователя: 1 главная виртуальная машина, 2 подчиненных.Все 3 виртуальные машины Azure: Ubuntu 16.04, 4 vcpus, 16 ГБ ОЗУ
Я следовал этому руководству по настройке JMeter и не вижу улучшенных результатов: https://www.blazemeter.com/blog/9-easy-solutions-jmeter-load-test-%E2%80%9Cout-memory%E2%80%9D-failure
Я также настроил все 3 системысогласно руководству по настройке EMQ: http://emqtt.io/docs/v2/tune.html
Проблема: Я все еще не могу установить 50000 соединений в течение 5000 с (1 ч 23 м) с двумя подчиненными виртуальными машинами.
СогласноВ документации JMeter я могу запустить 1000 потоков за x раз на одну виртуальную машину:
25.5 Ограничения , 3. Один клиент JMeter, работающий на процессоре 2-3 ГГц (последние CPU) может обрабатывать 1000-2000 потоков в зависимости от типа теста.
https://jmeter.apache.org/usermanual/jmeter_distributed_testing_step_by_step.html
Я могу проверить это на практике.Я также могу убедиться, что я могу достичь максимум 12 000 потоков за 600 с.(12500 потоков в любое время приводят к исключению OV JVM)
Поскольку целевые серверы являются виртуальными машинами, на которых выполняются экземпляры EMQ, отмечу, что в официальных документах по нагрузочному тестированию EMQ агент тестирования описывается как 1 VM 30000 VU (2докеры * 15000 VU. (http://emq -xmeter-benchmark-en.readthedocs.io / en / latest / connection.html # ssl-аутентификация )
Вопрос: Мне интересно, существует ли известная реализация JMeter (+ Virtual Machines + VirtualBox или Docker или какой-либо другой сервис), которая допускает больше потоков. Или, если есть известная оптимизация для JMeter, к которой я не обратился?