1、什么是nginx
Nginx是一个开源且高性能、可靠的HTPP中间件(Nginx在企业里应用最多的)、代理服务。
2、常见的HTTP服务
和Nginx类似的HTTP代理服务
3、HTTPD-Apache基金会
IIS -微软
GWS -Google 不对外开放
4、为什么选择Nginx
原因一、IO多路服用epoll
一、什么是IO复用
多并发就会产生多个请求,处理多个并发的请求对于中间件就会产生多个IO流,IO流请求系统内核有并行处理和串行处理两种方式,串行处理方式是一个一个处理,如果前一个发生阻塞后一个就无法发送请求,所以说我们用的是并行方式来完成整个IO流,以实现最大的并发和吞吐,这时就用了IO复用技术,IO复用技术就是用一个Socket来完成整个IO流。
多个描述符得到I/O操作都在一个线程内并发交替地顺序完成,这就叫I/O多路复用,这里的复用指的是复用同一个线程
二、什么是epoll
IO多路复用的实现方式selct、poll、epoll
原因二、轻量级
功能代码少
代码模块化
原因三、CPU亲和(affinity)
为什么需要CPU亲和
什么是CPU亲和
是一种把CPU核心和Nginx工作进程绑定方式,把每个worker进程固定在一个CPU上执行,减少切换CPU的cache miss,获得更好的性能。
原因四、sendfile
基于Nginx的中间件架构
网友评论