J'essaie de faire un test de résistance sur mon propre serveur en utilisant le siège avec la commande suivante:
$ siege -c 500 myweb.com/somefile.php
Mais je reçois cette erreur:
[error] descriptor table full sock.c:119: Too many open files
Et je reçois aussi cet avertissement:
libgcc_s.so.1 must be installed for pthread_cancel to work
Mais j'utilise Ubuntu 15.04 (branche Développement) et j'ai installé le paquet libgcc1, donc je ne sais pas pourquoi il se plaint de cette bibliothèque partagée .so.
Comment résoudre le trop grand nombre de fichiers ouverts et l'avertissement libgcc?
ubuntu
linux-networking
connection
socket
gcc
shakaran
la source
la source
ulimit -n 10000
ou de façon permanente ( rtcamp.com/tutorials/linux/increase-open-files-limit ).Réponses:
Pour résoudre ce problème par moi-même, j'ai dû ajuster le paramètre "ulimit" du système d'exploitation:
ulimit -a
- Vérifier le réglage actuelulimit -n 10000
- Modifier la valeur du paramètreSource: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=595527
la source
Augmentez simplement le nombre maximal de fichiers pouvant être ouverts par le même utilisateur dans la même session en conséquence.
Source: http://www.cyberciti.biz/faq/linux-increase-the-maximum-number-of-open-files/
la source
Le message d'erreur est trompeur
, mais il y a une erreur dans votre commande:Après,-c
vous devez spécifier le nombre d'utilisateurs simulés en cours.N'oubliez pas de vérifier les droits du fichier journal: par défaut c'est
/var/log/siege.log
.Ou, spécifiez la vôtre en ajoutant
--log=/home/user/siege.log
la source
L'installation de
gcc-multilib
m'a aidé avec (Ubuntu 16.04.3 LTS)sudo apt-get install gcc-multilib
la source