高性能web服务器-读书笔记
这篇笔记聚焦于高性能Web服务器中一个基础但关键的架构选择:进程模型。作者深入剖析了两种主流的进程处理方式——每连接一个进程(fork)与预派生进程池(prefork)的核心差异。 对于前者,每来一个新连接就fork出一个新子进程,模型简单直观,隔离性好,但频繁创建销毁进程带来的开销在高并发下会成为瓶颈。后者则采取另一种策略:服务器启动时就预先创建好一定数量的子进程组成“进程池”,后续连接由这些进程轮流接管处理,避免了运行时频繁创建进程的开销,但需要更精细的进程调度与状态管理。 文章指出,prefork模型因其稳定的资源占用和较低的启动延迟,通常更适用于需要处理大量长连接或有状态服务的场景,比如传统的CGI应用。而理解这两种模型的取舍,是优化服务器性能的第一步。笔记的剖析让这些经典模式背后的工程考量变得清晰。