Возможно, я бы советовал вам использовать cURL и отправлять только случайные вещи (например, читать 10 МБ из /dev/urandom
и кодировать его в base32), через POST-запрос и вручную создавать тело для загрузки файла (это не ракетостроение).
Создайте этот скрипт 100 раз, возможно, на нескольких серверах. Просто убедитесь, что системные администраторы не думают, что вы делаете DDoS или что-то еще:)
К сожалению, этот ответ остается немного расплывчатым, но, надеюсь, он поможет вам подтолкнуть вас на правильный путь.
Продолжение согласно комментарию Лиама:
Если сервер, принимающий загрузки, не находится в той же локальной сети, что и клиенты, подключающиеся к нему, было бы лучше получить как можно более удаленные узлы для стресс-тестирования, если только имитировать поведение как можно более аутентичным. Но если у вас нет доступа к компьютерам за пределами локальной сети, локальная сеть всегда лучше, чем ничего.
Стресс-тестирование внутри одного и того же оборудования было бы не очень хорошей идеей, так как вы делали бы двойную нагрузку на сервер: выявляли случайные данные, упаковывали их, отправляли их через стек TCP / IP (хотя, вероятно, не через Ethernet). ), и только тогда сервер сможет сделать свое волшебство. Если отправляющая часть передана на аутсорсинг, вы получаете удвоенную (взятую с зерном соли произвольного размера) производительность принимающей стороны.