Nginx Vs Apache

Apache基于select实现,Nginx基于epoll实现。select和epoll的区别参考IO多路复用模型

Nginx(适合网络密集型)是事件驱动型,当其在系统资源不可用时,对应的进程将被挂起直至系统资源可用时才会被唤醒(异步)。

而Apache(适合计算密集型)在系统资源不可用时,将一直等待直至系统资源可用(同步-阻塞型)。

这将导致Apache对比Nginx会有更大的内存占用、更少的并发量支持。

Why nginx is faster than Apache, and why you needn’t necessarily care