Too many open files

Problem

Auf einem Server System mit GlassFish und MySQL traten immer wieder sprunghafte Anstiege der Datenbank Verbindungen auf. Die GlassFish Log-Dateien enthielten an die hundert Einträge mit der IOException Too many open files. Diese Fehler ereigneten sich in unregelmässigen Abständen und das Problem konnte anfangs auch nicht richtig zugeordnet werden.

Ursache

Nach einiger Zeit wurde festgestellt, dass diese Exception oft in folgenden Fällen ausgelöst wurde:

Lösung

Eine längere Suche führte letztendlich zum File Descriptor Limit von Linux, das die maximale Anzahl, gleichzeitig geöffneter Dateien und Socket Verbindungen, festlegt. Der Versuch mit dem Befehl ulimit den Standard von 1024 auf 65535 zu erhöhen scheiterte jedoch, da die Änderungen nicht dauerhaft gespeichert wurden. Erst die folgenden zwei Einträge in limits.conf brachten den gewünschten Erfolg.

Folgende Massnahmen zur Behebung des Problems wurden durchgeführt:

* soft nofile 65535 * hard nofile 65535

Bei Ausführung von ulimit -a wird nun der neue Wert open files 65535 angezeigt.

Resourcen

[1] GlassFish V2 UR1
[2] /etc/security/limits.conf

Johannes Hammoud Too many open files 01.06.2008

I Coding : Community über Java Programmierung

Sprache Englisch+-

Java JSF JavaScript HTML CSS NetBeans GlassFish MySQL

Impressum

Besuche
6279996
Heute
7318