Linux RPC – Serverseite

Linux RPC – Serverseite

Ich lese über RPC beiDasSeite.

Ich verstehe, dass dies ein Client/Server-Modell ist und der Server auf Anfragen des Clients antworten kann. Ich möchte fragen, ob es möglich ist, dass eine serverseitige Komponente nicht ausgeführt wird, wenn die Clientseite versucht, sie per RPC aufzurufen, und die serverseitige Komponente dennoch ausgeführt wird, um die Anfrage zu verarbeiten?

Antwort1

Es gibt mindestens zwei Möglichkeiten, ein System zu haben, das dies tut:

  1. Der Kernel führt den RPC-Dienst aus. Dies gilt hauptsächlich für NFS-Server. Der Linux-Kernel führt den NFS-Dienst aus. Von einem Benutzerprozess werden Sie nicht viel oder gar nichts sehen. Dies liegt zum Teil an der Leistung (und der NFS-Dienst ist leistungskritisch) und zum Teil daran, dass der Kernel Informationen über Dateien und Dateisysteme hat, die sonst nirgendwo verfügbar sind.
  2. Sie können ein „Internet-Superserver" läuft, der auf einer Reihe von TCP- und/oder UDP-Ports lauscht. Wenn Daten auf einem der Mitglieder dieser Ports eingehen, startet der "Superserver" den eigentlichen Serverprozess und übergibt den Socket als stdin und stdout. Das Original inetdist stark in Ungnade gefallen und es gibteine Reihe von Ersatz, einschließlich xinetd, systemdund andere.

verwandte Informationen