У меня есть сервис, который я звоню из другого приложения. Ниже приведен URL-адрес моей службы, на который я звоню.
http://www.betaservice.domain.host.com/web/hasChanged?ver=0
Мне нужно выполнить несколько нагрузочных тестов на моем указанном выше URL-адресе службы многопоточным способом вместо последовательного вызова по одному.
Есть ли какой-нибудь способ из сценария оболочки bash, я могу загрузить вышеуказанный URL-адрес службы, вызвав его многопоточным способом? У меня может быть 60-70 потоков, вызывающих параллельный URL выше очень быстро, если это возможно?
pgrep: invalid option -- 'c'
. Я не уверен, почему, вы можете подумать, что может быть причиной?pgrep
реализация. Это Linux? Который из? В любом случае, вы можете просто изменить эту строку наif [ $(pgrep wget | wc -l) -lt 70 ]; then
Попробуйте ab, вы тоже получите хорошую статистику:
Этот вызов выполнит 10000 запросов с одновременностью 70 параллельных запросов.
источник
Red Hat Enterprise Linux Server release 6.3
?yum install httpd-tools
в соответствии с serverfault.com/a/363775/10989Вы можете попробовать установить GNU параллельно. Вы можете получить несколько параллельных примеров GNU здесь .
тестирование
Я установил
gnu-parallel
из источника на моей машине, и я мог заставить его работать.Вы можете установить его из источника здесь . У меня есть система RedHat , и поэтому я скачал пакет фетрового , а затем побежал
.configure
,make
и ,make install
чтобы получитьparallel
установлен в моей системе.Теперь, после успешной установки, я создал каталог
checking
и выполнил приведенную ниже команду.Как и ожидалось, вышеприведенная команда загрузила мне 10 копий веб-страницы. Вы можете установить номер, который вы хотите с
seq
.Для получения дополнительной информации о том, как выполнить одну и ту же команду параллельно, вы можете проверить примеры, предоставленные gnu-parallel отсюда . На странице примера
РЕДАКТИРОВАТЬ
Теперь, чтобы воспользоваться преимуществами
parallel
выполнения, вы можете использовать команду как,Эта
-j
опция может указывать общее количество заданий, которые могут выполняться параллельно на основе общего количества ядер ЦП.источник
GNU parallel
. unix.stackexchange.com/questions/114962/…