Tengo un servicio al que llamo desde otra aplicación. A continuación se muestra la URL de mi servicio al que llamo:
http://www.betaservice.domain.host.com/web/hasChanged?ver=0
Necesito hacer una prueba de carga en mi URL de servicio anterior de manera multiproceso en lugar de llamar secuencialmente uno por uno.
¿Hay alguna forma de script de shell bash, puedo poner una carga en mi URL de servicio anterior llamándolo de manera multiproceso? ¿Puedo tener 60-70 hilos llamando a la URL anterior en paralelo muy rápido si es posible?
pgrep: invalid option -- 'c'
. No estoy seguro de por qué, ¿puedes pensar cuál podría ser la razón?pgrep
implementación diferente . ¿Es esto Linux? ¿Cúal? De todos modos, puede cambiar esa línea aif [ $(pgrep wget | wc -l) -lt 70 ]; then
Prueba ab, también obtienes una buena estadística:
Esta llamada hará 10000 solicitudes con concurrencia de 70 consultas paralelas.
fuente
Red Hat Enterprise Linux Server release 6.3
?yum install httpd-tools
, de acuerdo con serverfault.com/a/363775/10989Podría intentar instalar GNU en paralelo. Puede obtener algunos ejemplos paralelos de GNU desde aquí .
Pruebas
Lo instalé
gnu-parallel
desde el origen en mi máquina y pude hacerlo funcionar.Puedes instalarlo desde la fuente desde aquí . Tengo un sistema redhat y descargué el paquete fedora y luego ejecuté el
.configure
,make
ymake install
paraparallel
instalarlo en mi sistema.Ahora, después de la instalación exitosa, creé un directorio
checking
y ejecuté el siguiente comando.Como se esperaba, el comando anterior me descargó 10 copias de la página web. Puede establecer el número que desee con
seq
.Para obtener más información sobre cómo ejecutar el mismo comando en paralelo, puede verificar los ejemplos proporcionados por gnu-parallel desde aquí . Desde la página de ejemplo,
EDITAR
Ahora, para aprovechar la
parallel
ejecución, puede usar el comando como,La
-j
opción es algo que podría especificar el total de trabajos que se pueden ejecutar en paralelo en función de los núcleos de CPU totales.fuente
GNU parallel
. unix.stackexchange.com/questions/114962/…