Nginx软件
实现网站服务器
反向代理服务器
代理web、mail服务器
Nginx特性
轻量级、高性能HTTP服务器
高性能的reverse proxy反向代理服务器
基于模块化设计
基于EPOLL事件驱动模型
重新加载配置及在线升级时,不需要中断正在处理的请求(nginx热部署)
带缓存的日志写操作
URL重写(rewrite)模块
支持验证HTTP referer,实现反倒链机制
支持sendfile,将数据在内核中直接封装响应客户端,不需要将数据复制到进程地址空间
10000个非活跃的HTTP KEEPALIVE连接仅占用2.5M内存
支持缓存功能
nginx的事件驱动模型
Nginx服务器接收和处理客户端请求时,就是基于事件驱动机制的
SELECT
Linux, windows平台支持的事件驱动模型
首先,创建所关注事件的描述符集合。对于每一个描述符,需要关注其上面的读事件,写事 件,异常事件;所以要创建三类事件描述符集合
调用底层以的select()函数,等待事件发生
轮询所有事件描述符,检查是否有事件发生,如果有,就进行处理
POLL
Linux平台支持的事件驱动模型,2.1.23版本内核中引入
和select一样,需要创建 一个关注事件的描述符集合,等待事件发生,轮询描述符集合,检测 有没有事件发生,如果有,就执行
不一样的是,select需要创建三类描述符集合,而poll只需要创建一类集合,在每个描述符下 分别创建读、写、异常事件,最后轮询时,可同时轮询
epoll(RHEL, CentOS)
Linux 2.5.44内核后引入
把描述符列表的管理交由内核负责,一旦有某种事件发生,内核把发生事件的描述符列表通知 给进程,避免轮询减少系统开销
kqueue
支持BSD系列平台的高效事件驱动模型
/dev/poll
支持UNIX衍生平台(unix, AIX, hp-unix)的高效事件驱动模型
eventport
支持Solaris 10及以上版本平台的高效事件驱动模型
Nginx软件下载:
http://nginx.org/
http://www.nginx.cn/doc/
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。