Que tal como andan todos?
Les quiero hacer una consulta sobre un problema que se me presenta en el trabajo y tal ves me ayuden a resolverlo.
Tenemos un sofware que atiende escuchando en un puerto y abre un hilo por cada petición de
conexión que recibe.
A su vez cada hilo abre varias conexiones a una base de datos.
El problema es que nos encontramos que con determinada carga el máximo número de
filedescriptors por proceso es alcanzado (1024).
Se ha modificado mediante modificación de /etc/security/limits.h para el usuario que corre el proceso
y logrando que ulimit -n me de 4096 en el usuario que corre el proceso.
Sin embargo el límite persiste.
También hemos averiguado que existen librerías de C que tienen ese valor hardcodeado en uno o más lugares
de echo FD_SETSIZE y __FD_SETSIZE están en los .h de /usr/include definidos como 1024.
Mi consulta consiste en estas 2 preguntas:
¿Existen variantes de esas bibliotecas (32bits) que permitan un valor de FD_SETSIZE y __FD_SETSIZE mayor?
o distribuciones de Linux Servidor que cumplan con ese requisito?
¿Existe forma de recompilar las liberías y utilizarlas unicamente por el software desarrollado por nosotros y de
forma de no afectar el sistema operativo?
Les agradezco desde ya.
Saludos
--
Les quiero hacer una consulta sobre un problema que se me presenta en el trabajo y tal ves me ayuden a resolverlo.
Tenemos un sofware que atiende escuchando en un puerto y abre un hilo por cada petición de
conexión que recibe.
A su vez cada hilo abre varias conexiones a una base de datos.
El problema es que nos encontramos que con determinada carga el máximo número de
filedescriptors por proceso es alcanzado (1024).
Se ha modificado mediante modificación de /etc/security/limits.h para el usuario que corre el proceso
y logrando que ulimit -n me de 4096 en el usuario que corre el proceso.
Sin embargo el límite persiste.
También hemos averiguado que existen librerías de C que tienen ese valor hardcodeado en uno o más lugares
de echo FD_SETSIZE y __FD_SETSIZE están en los .h de /usr/include definidos como 1024.
Mi consulta consiste en estas 2 preguntas:
¿Existen variantes de esas bibliotecas (32bits) que permitan un valor de FD_SETSIZE y __FD_SETSIZE mayor?
o distribuciones de Linux Servidor que cumplan con ese requisito?
¿Existe forma de recompilar las liberías y utilizarlas unicamente por el software desarrollado por nosotros y de
forma de no afectar el sistema operativo?
Les agradezco desde ya.
Saludos
--
--