構築環境:FreeBSD 4.10-RELEASE POSIXスレッドについて知りたければ、まずは【C言語】POSIXスレッドプログラミングを参照。 サーバの仕組みとスレッド † 通常、Webサーバなどは親プロセスがポートをListenし、接続があったら、子プロセスを生成し、その後の(クライアントへのデータ送信等の)処理は、子プロセスに 任せるというフローをとる。 そうすることで、親プロセスはクライアントへデータ送信が終わるのを待つ必要がなくなり、どんどん接続を受けることが可能になる。 接続数が多くなると、当然、子プロセスが多くなり、サーバへの過負荷となる。 そこで、子プロセスではなく、スレッドでクライアントの処理を行うと負荷低減につながる*1 ↑ echoサーバのPOSIXスレッド化 † 【C言語】Socket間通信(echoサーバ)にptheadを組み込み、複数クライアントに対して