目录
Nginx的优缺点
Nginx主要有5个优点
- 高并发,高性能:从数据上看32核64G的服务器可以轻松达到数千万的并发链接
 - 可扩展性好:模块化设计稳定,导致第三方模块生态圈非常的丰富
 - 高可靠性:可以持续不间断的在Web服务器上运行数年,
 - 热部署:在不停止服务的情况下,升级Nginx
 - Nginx 开源且免费,在特定情况下可以去修改Nginx的源代码
 
缺点就是开发Nginx模块所需要的技术要求比较高
Nginx的组成部分
它有4个主要的组成部分
- Nginx二进制可执行文件:这是由各模块源码编译出来的一个文件
 - Nginx.conf的配置文件:它可以控制Nginx的行为
 - access.log访问日志:记录每一条http请求
 - error.log错误日志:定位问题
 
用汽车来类比,它的二进制可执行文件就相当于一个汽车本体,配置文件就相当于驾驶员控制汽车的行为,它的access.log访问日志就相当于一个GPS轨迹记录,用来记录汽车行驶过的轨迹,最后error.log就相当于汽车的黑匣子,当发生事故的时候,可以通过黑匣子来判断这是汽车本身故障还是驾驶员的失误。
Nginx的配置语法
- 配置文件由指令和指令块构成
 - 每条指令以 ; 结尾,指令与参数之间用空格隔开
 - 指令块以{}将多条指令组织在一起
 - include语句允许组合多个配置文件以提升可维护性
 - 使用 # 添加注释
 - 使用$使用变量
 - 部分指令参数支持正则
 - 配置参数:
 - 时间单位有ms,s,m,h,d,w,M,y。它们分别代表着毫秒、秒、分钟、小时、天、周、月、年。
 - 空间单位:不加表示字节、加了k/K表示千字节、加了m/M表示兆字节、加了g/G表示G字节。
 
http配置的指令块:http、server、location、upstream。
- http这个模块表示所有的指令都由Http去解析,
 - upstream这个模块表示 当我们与其他服务进行交互的时候可以定义一个upstream
 - server对应一个域名
 - location 表示URL表达式
 
Nginx的命令
- -? -h 帮助
 - -c 使用指定的配置文件
 - -g 指定配置指令
 - -p 制定运行目录
 - -s 发送信号    
- 立刻停止服务 stop
 - 优雅的停止服务 quit
 - 重载配置文件 reload
 - 重新开始记录日志文件 reopen
 
 - -t -T 测试配置文件是否有语法错误
 - -v -V 打印Nginx的版本信息、编译信息
 
热部署
当Nginx在运行的时候,如果要升级Nginx的话。需要先把旧的备份
cp nginx nginx.old  然后把已经编译好的最新版本的Nginx的二进制文件 copy到目录中,替换掉正在运行的Nginx文件
向Nginx进程发送USR2信号
kill -USR2 28109  接下来再查看,发现新老的master与worker都在运行
再向旧的Nginx进程发送
kill -WINCH 28109  表示优雅的关闭你的所有worker进程
这时候老的master不会自动被删除的,会留在这里,让你可以做版本回退。
日志切割
../sbin/nginx/ -s reopen  



京公网安备 11010502036488号