Другой способ определить коэффициент вылупления клиентки саранчи на старте? - PullRequest
0 голосов
/ 08 мая 2020

У меня есть задача, которая требует от меня отправки 1 запроса в минуту для 1000 услуг. Я хотел бы контролировать это поведение, используя коэффициент вывода и клиентов, при которых я буду создавать 1 нового клиента каждую минуту, и это будет go на 1000 клиентов. В настоящее время, если я правильно понимаю, locust реализован таким образом, что 1 клиент порождается каждые se c. и саранча прекращается по истечении времени выполнения.

Я хотел бы понять, как я могу этого добиться.

Дополнительная информация:

  1. Мы используем распределенные выполнение (-no-web), из-за которого у меня нет доступа к пользовательскому интерфейсу
  2. В настоящее время нет возможности завершить работу клиента после завершения его выполнения, и я не знаю подход, который может помочь мне приостановить клиент. В настоящее время, даже после того, как клиент выполнил заданное количество итераций, он продолжает перекачивать больше запросов до истечения времени выполнения.
  3. Я не могу использовать время сна во время выполнения, так как наш сквозной запрос состоит из post + get where get может занять от 10 секунд c до 1 минуты, а в некоторых случаях более 1 минуты для достижения ожидаемых результатов

, пожалуйста, сообщите.

1 Ответ

1 голос
/ 08 мая 2020

Если вы установите коэффициент вывода (-r) на 0,016666 (1/60), это должно дать вам одного нового клиента в минуту.

Кроме того, вы можете использовать таймаут остановки (-s), чтобы разрешить последний просит фини sh. Задайте для него значение, которое, как вы знаете, намного больше, чем максимальное ожидаемое время ответа.

Еще есть шанс, что вы получите что-то вроде 995–1005 запросов, но если это приемлемо, то все должно быть в порядке. Если нет, go оставьте комментарий на https://github.com/locustio/locust/issues/1085

...