Estoy ejecutando Jetty 7.2.2 y quiero limitar el número de conexiones que manejará, de modo que cuando alcance un límite (por ejemplo, 5000), comenzará a rechazar las conexiones.¿Cómo limito el número de conexiones que Jetty aceptará?
Desafortunadamente, todos los Connectors
parecen seguir adelante y aceptar las conexiones entrantes tan rápido como puedan y enviarlas al grupo de subprocesos configurado.
Mi problema es que me estoy ejecutando en un entorno restringido, y solo tengo acceso a los descriptores de archivos 8K. Si recibo un montón de conexiones, puedo rápidamente quedarme sin descriptores de archivos y entrar en un estado incoherente.
Una opción que tengo es devolver un HTTP 503 Service Unavailable
, pero eso todavía requiere que yo acepte y responda a la conexión, y habría hecho un seguimiento del número de conexiones entrantes en algún lugar, quizás escribiendo un filtro de servlet.
¿Hay una mejor solución para esto?
El problema es que el 'Acceptors' acaba de volcar las conexiones en una cola tan rápido como sea posible y luego ir a buscar más, por lo que nunca se alcanza el límite SO . – BigBen