Eu tenho um serviço que estou chamando de outro aplicativo. Abaixo está o URL do meu serviço que estou chamando -
http://www.betaservice.domain.host.com/web/hasChanged?ver=0
Eu preciso fazer algum teste de carga no meu URL de serviço acima de maneira multithread em vez de chamar sequencialmente um por um.
Existe alguma maneira de bash shell script, eu posso colocar uma carga no meu URL de serviço acima, chamando-o de maneira multithread? Posso ter 60-70 threads chamando acima do URL em paralelo muito rápido, se possível?
pgrep: invalid option -- 'c'
. Não sei por que, você pode pensar qual pode ser o motivo?pgrep
implementação diferente . Isso é Linux? Qual? De qualquer forma, você pode simplesmente mudar essa linha paraif [ $(pgrep wget | wc -l) -lt 70 ]; then
Tente ab, você também obtém uma boa estatística:
Essa chamada fará 10000 solicitações com simultaneidade de 70 consultas paralelas.
fonte
Red Hat Enterprise Linux Server release 6.3
?yum install httpd-tools
, de acordo com serverfault.com/a/363775/10989Você pode tentar instalar o GNU paralelo. Você pode obter alguns exemplos paralelos do GNU aqui .
Teste
Eu instalei
gnu-parallel
da fonte na minha máquina e consegui que ela funcionasse.Você pode instalá-lo a partir da fonte a partir daqui . Eu tenho um sistema redhat, então baixei o pacote fedora e executei o
.configure
,make
emake install
paraparallel
instalá-lo no meu sistema.Agora, após a instalação bem-sucedida, criei um diretório
checking
e executei o comando abaixo.Como esperado, o comando acima baixou 10 cópias da página da web. Você pode definir o número que desejar
seq
.Para mais informações sobre como executar o mesmo comando em paralelo, você pode verificar os exemplos fornecidos pelo gnu-parallel a partir daqui . Na página de exemplo,
EDITAR
Agora, para aproveitar a
parallel
execução, você pode usar o comando como,A
-j
opção é algo que pode especificar o total de tarefas que podem ser executadas em paralelo com base no total de núcleos da CPU.fonte
GNU parallel
. unix.stackexchange.com/questions/114962/…