Xinetd-Server-Konfiguration

1143
Gunnlaugur

Ich habe ein Java-Server-Konsolenprogramm, das ich konfiguriert habe, um xinetd zu starten, wenn die Verbindung an einem bestimmten Port hergestellt wird und das Programm dann in einer Endlosschleife ausgeführt wird, die den Inputstream von Telefonvermittlungen empfängt.

Die Sache ist, wenn ein neuer Teil des Streams aus dem Austausch kommt, xinetd jedes Mal einen neuen Prozess aufteilt. Ich habe versucht, den Parameter wait auf yes zu setzen und den Deamon neu zu starten, aber kein Erfolg.

Wie kann ich dieses Verhalten stoppen und den Deamon dazu bringen, den Stream an den bereits laufenden Prozess weiterzuleiten? Fehlt mir etwas in meiner Konfig oder ist es nur falsch?

Meine Konfig lautet wie folgt:

defaults { instances = 60 log_type = SYSLOG authpriv log_on_success = HOST PID log_on_failure = HOST cps = 50 10 } includedir /etc/xinetd.d 

Und dann meine eigentliche Config,

service aos_larmar { socket_type = stream protocol = tcp user = root type = UNLISTED wait = yes instances = 256 server = /home/gunnl/java/start.sh port = 5204 disable = no } 

Mein Server-Betriebssystem ist
Red Hat Enterprise Linux ES, Version 4 (Nahant Update 7).

0

1 Antwort auf die Frage

1
Ignacio Vazquez-Abrams

xinetd fälscht einen neuen Prozess für jede Verbindung und die Verbindung wird geschlossen, wenn der Prozess beendet wird. Wenn Sie einen permanenten Prozess haben, sollten Sie stattdessen etwas wie netcat verwenden.

Soll ich dann so etwas wie "I nc -l -p 3000" verwenden? Gunnlaugur vor 13 Jahren 0
Etwas wie: Auf dem empfangenden Computer: "nc -l 3141" (netcat, hören Sie Port 3141) und auf dem sendenden Computer "nc -p 3141" (netcat, Portnummer verwenden). Hennes vor 11 Jahren 0