Estoy tratando de hacer una prueba de estrés en mi propio servidor usando el sitio con el siguiente comando:
$ siege -c 500 myweb.com/somefile.php
Pero me sale este error:
[error] descriptor table full sock.c:119: Too many open files
Y también recibo esta advertencia:
libgcc_s.so.1 must be installed for pthread_cancel to work
Pero estoy usando Ubuntu 15.04 (rama de desarrollo) y he instalado el paquete libgcc1, así que no sé por qué está compilando sobre esa biblioteca compartida .so.
¿Cómo puedo resolver los demasiados archivos abiertos y la advertencia de libgcc?
ubuntu
linux-networking
connection
socket
gcc
shakaran
fuente
fuente
ulimit -n 10000
o de forma permanente ( rtcamp.com/tutorials/linux/increase-open-files-limit ).Respuestas:
Para resolver este problema por mí mismo, tuve que ajustar la configuración "ulimit" del sistema operativo:
ulimit -a
- Compruebe la configuración actualulimit -n 10000
- Editar valor de configuraciónFuente: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=595527
fuente
Simplemente aumente el número máximo de archivos que puede abrir el mismo usuario dentro de la misma sesión en consecuencia.
Fuente: http://www.cyberciti.biz/faq/linux-increase-the-maximum-number-of-open-files/
fuente
El mensaje de error es engañoso
, pero hay un error en su comando:Después-c
debe especificar el número de usuarios simulados consurgentes.No olvide verificar los derechos para el archivo de registro: por defecto es
/var/log/siege.log
.O bien, especifique el suyo agregando
--log=/home/user/siege.log
fuente
Instalar el
gcc-multilib
me ayudó con él (Ubuntu 16.04.3 LTS)sudo apt-get install gcc-multilib
fuente