Working with TCP Sockets 読書メモ 第17章 プロセスごとの接続

Working with TCP Sockets 読書メモ 目次

プロセスごとの接続

  • このアーキテクチャではリクエストの並列処理が可能になる
  • 接続を受け付け後、サーバは子プロセスをforkしてコネクションを処理させる

forkの基礎

  • プログラムを実行すると新しいプロセスが立ち上げられる
  • forkを使うと実行時に新しいプロセスを作成できる
  • 流れは以下のようになる
  1. クライアントがサーバに接続する
  2. メインのサーバプロセスが接続を受け付ける
  3. メインプロセスは、自身のコピーを子プロセスとしてforkする
  4. 子プロセスが接続を処理する
  • 子プロセスは並列に実行される
  • 接続を受け付ける親プロセスは常に1つだけ

実装

考察

  • 利点:シンプル、並列性がある
  • 欠点:子プロセスの数に上限がない、forkはUNIXでしか動かない

コメントを残す