RPCについて読んでいます。これページ。
私はこれがサーバーがクライアントのクエリに応答するクライアント/サーバーモデルであることを理解しています。私が尋ねたいのは、クライアントがRPCを使用してサーバー側コンポーネントを呼び出そうとしたときにサーバー側コンポーネントが実行されておらず、サーバー側が要求を処理するために何とか実行されていることです。
答え1
システムがこれを行う方法には少なくとも2つあります。
- カーネルはRPCサービスを提供します。 NFSサーバーの場合は特にそうです。 LinuxカーネルはNFSサービスを提供します。ユーザープロセスはあまり表示されません。これは部分的にはパフォーマンスのため(NFSサービスはパフォーマンスにとって非常に重要です)、一部はカーネルが他の場所では利用できないファイルやファイルシステムに関する情報を持っているためです。
- あなたは「インターネットスーパーサーバー「実行中、一連のTCPおよび/またはUDPポートで受信中です。一部のデータがポートセットのメンバーの1つに入ると、「スーパーサーバー」は実際のサーバープロセスを開始し、ソケットを標準入力のままにし、ソースをドロップし
inetd
ました。まだ好意的ではありません。いくつかの選択肢xinetd
、systemd
などを含みます。