SuperserverEin Superserver ist ein Serverprozess, der viele Ports überwacht und beim Eintreffen eines Client-Requests den zuständigen Serverdienst startet. Hat dieser Server seine Aufgabe für diese Anfrage erledigt, wird er beendet. Inetd ist ein bekanntes Beispiel für einen Superserver bei Unix-Systemen. Die Zuordnung der Netzwerkdienste zu den Portnummern erfolgt in der Datei /etc/services. VorteileIm klassischen Ansatz überwacht ein Serverprozess einen Port. Bei vielen Ports sind also viele Prozesse im Wartezustand und verbrauchen dabei Systemressourcen, vor allem Arbeitsspeicher. Beim Superserver-Ansatz wird nur der vergleichsweise kleine Server vorgehalten, was weniger Arbeitsspeicher bei inaktiven Serverdiensten benötigt. Viele Superserver sind dahingehend konfigurierbar, dass
Zudem ermöglicht der Superserver eine vereinfachte Programmierung der Serverdienste, da er für jede eingehende Verbindungsanforderung einen eigenen Prozess startet. Der Programmierer braucht sich um diese Einzelheiten innerhalb seines Programmes nicht zu kümmern. NachteileFür das Starten des jeweiligen Servers wird Zeit benötigt, was die Reaktionszeit bis zur Verfügbarkeit des Netzwerkdienstes entsprechend erhöht. Bei vielen kurzen Verarbeitungen wird auf dem System dadurch mehr Last generiert als mit einem bereits wartenden Verarbeitungsprozess. Siehe auchLiteratur
|