Nginx和Apache区别
一:Nginx特点
- epoll 异步非阻塞
- nginx在开启时,会生成一个master进程,然后,master进程会fork多个worker子进程,最后每个用户的请求由worker的子线程处理。
- 可以配置nginx的upstream实现nginx的反向代理。
- 支持7层负载均衡
- 静态文件、反向代理、前端缓存等处理方便
- 支持高并发连接,每秒最多的并发连接请求理论可以达到 50000 个
- 配置文件简单
- 用线程处理用户请求,而线程是共享内存的,只需要开启少量进程,多个线程就可以共享进程的内存,占用内存小
- 一个进程死掉时,会影响到多个用户的使用,稳定性差
二:Apache特点
- 稳定
- rewrite强大
- select 同步阻塞
- 一个连接对应一个进程
- 用进程处理用户请求,用MPM(多处理模块)来绑定到网络端口上,接受请求,调度子进程处理请求
- 当用户请求过多时,开启的进程较多,占用内存大,每秒最多的并发连接请求最多不超过 3000 个
- 一个进程死掉时,不会影响其他的用户