NGINX服务
NGINX在OSI的应用层工作时,称为正向代理服务器(优势是利用缓存)
NGINX在OSI的传输层工作时,称为调度器(反向代理服务器,类似于LVS)
NGINX也可以充当web服务器
I/O的工作机制基本介绍
网络I/O:本质上是socket文件的读取
磁盘I/O
PIO(Program):应用程序的输入输出模式,所有内容都需要经过CPU的转发
DMA(Direct Memory Access):直接内存访问,CPU只需要发出操作指令
每次I/O,数据都是从Disk===è内核缓冲区,进行准备===è应用程序进程内存
(硬件设施之间传输使用DMA实现,内存之间的数据转换CPU必须参与)
I/O模型
有两大特点
1.消息通信机制的同步/异步
同步(synchronous):调用者主动询问被调用者,来获取消息
异步(asynchronous):被调用者主动将自己的状态消息回应调用者
2.调用者在等待被调用者返回消息前的状态
阻塞(blocking):调用者一直等待,直到被调用者返回I/O操作成功消息
非阻塞(nonblocking):调用者可以不用一直等待
根据以上两特点,分为五大类I/O模型:
阻塞型、非阻塞型、复用型(通过select、poll、epoll实现)、信号驱动型、异步
NGINX底层就是通过epoll来实现I/O复用模型
NGINX是高度模块化的,通过调用不同类型的模块,实现不同的功能,模块主要分为如下:
1.核心模块
2.标准模块(HTTP协议相关、Mail邮件相关、Stream代理模块)
3.第三方模块
官方的模块信息网站:http://nginx.org/en/docs/
NGINX安装程序包nginx,服务名也为nginx
默认存放网页路径:/usr/share/nginx/html/*.html
NGINX服务的程序常用的选项如下:
nginx 启动服务(systemctl start nginx)
nginx -t 检测配置文件的语法
nginx -s stop 关闭服务(systemctl stop nginx)
nginx -s reload