#locust
#саранча #locust
Вопрос:
Я пытаюсь протестировать загрузку вызова сервера, время отклика которого составляет около 3 секунд. Я пытаюсь увеличить нагрузку на этот сервер, но максимальный rps, который я получаю, составляет 0,3-0,4. У меня 100 пользователей, и я сохранил скорость вывода 100 в секунду. Кроме того, время ожидания составляет 0,1 секунды.
Почему rps такой низкий и что я могу сделать, чтобы его улучшить?
Если я заменю свой серверный вызов очень дешевым вызовом, внезапно RPS значительно увеличится. Итак, я не думаю, что проблема в моей настройке.
Комментарии:
1. привет! взгляните на github.com/locustio/locust/wiki/FAQ#increase-my-request-raterps и если это не поможет, разместите файл lour locust здесь, чтобы я мог взглянуть. ваш сервер вызывает HTTP-запрос? если нет, убедитесь, что он по-прежнему поддерживает gevent. (в противном случае это заблокирует всех пользователей locust в процессе locust)
2. Я использовал grpc, и это вызывало проблемы, поскольку он не поддерживает gevent. Я смог исправить это, используя monkey patch и grpc gevent patch
Ответ №1:
Мой сервер был сервером grpc, и это вызывало проблему с gevent. Добавление этого перед инициализацией любого клиента grpc устранило проблему
from gevent import monkey
monkey.patch_all()
import grpc.experimental.gevent
grpc.experimental.gevent.init_gevent()
Комментарии:
1. Круто! Если он продолжает работать хорошо, возможно, вы бы подумали о создании PR для добавления вашего пользователя grpc в github.com/SvenskaSpel/locust-plugins
2. @Cyberwiz конечно, я это сделаю