为什么 Nginx 比 Apache 更牛叉?
阅读本文大概需要 6 分钟。
来自:codebay.cn/post/8557.html
一、Apache三种工作模式 1、prefork的工作原理 2、worker的工作原理 3、event 基于事件机制的特性 二、如何提高Web服务器的并发连接处理能力 三、Nginx优异之处 四、Nginx 工作原理 五、Nginx 的诞生主要解决C10K问题 1、select模型:(apache使用,由于受模块等限制,用的不多); 2、poll:poll是unix沿用select自己重新实现了一遍,唯一解决的问题是poll 没有最大文件描述符数量的限制; 3、epoll模型:(Nginx使用)
15M*10=150M
),开启的64个php-cgi进程消耗1280M内存(20M*64=1280M
),加上系统自身消耗的内存,总共消耗不到2GB内存。如果服务器内存较小,完全可以只开启25个php-cgi进程,这样php-cgi消耗的总内存数才500M。一、Apache三种工作模式
prefork: 多进程,每个请求用一个进程响应,这个过程会用到select机制来通知。 worker: 多线程,一个进程可以生成多个线程,每个线程响应一个请求,但通知机制还是select不过可以接受更多的请求。 event: 基于异步I/O模型,一个进程或线程,每个进程或线程响应多个用户请求,它是基于事件驱动(也就是epoll机制)实现的。
1、prefork的工作原理
2、worker的工作原理
3、event 基于事件机制的特性
二、如何提高Web服务器的并发连接处理能力
三、Nginx优异之处
四、Nginx 工作原理
五、Nginx 的诞生主要解决C10K问题
1、select模型:(apache使用,由于受模块等限制,用的不多);
2、poll:poll是unix沿用select自己重新实现了一遍,唯一解决的问题是poll 没有最大文件描述符数量的限制;
3、epoll模型:(Nginx使用)
推荐阅读:
Java8异步利器:CompletableFuture全网最全使用教程
互联网初中高级大厂面试题(9个G) 内容包含Java基础、JavaWeb、MySQL性能优化、JVM、锁、百万并发、消息队列、高性能缓存、反射、Spring全家桶原理、微服务、Zookeeper......等技术栈!
⬇戳阅读原文领取! 朕已阅
评论