欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

《实战nginx》第1、2章

程序员文章站 2023-12-25 08:51:33
...

该文是学习《实战nginx,取代apache的web服务器》第二章 1、优点: 官方测试Nginx支撑5万并发连接数,实际生产中可以支撑2-4万的并发连接数。Nginx是轻量级服务区,消耗内存少。 相比apache和lightpd,nginx在反向代理、Rewrite规则、稳定性、静态文件处理、

该文是学习《实战nginx,取代apache的web服务器》第二章

1、优点:

官方测试Nginx支撑5万并发连接数,实际生产中可以支撑2-4万的并发连接数。Nginx是轻量级服务区,消耗内存少。

相比apache和lightpd,nginx在反向代理、Rewrite规则、稳定性、静态文件处理、内存消耗等方面,表现出很强的优势。

Nginx支持热部署,7*24小时的运行没问题,数个月都不需要重启!!不间断服务的情况下对软件升级!

nginx和apache、lightpd相比较(CSDN抽风了,不能上传图片)

2、特点-模块依赖性

Nginx的gzip模块需要zlib库,rewrite模块需要pcre库,ssl功能需要openssl库。

nginx安装中有几个参数(不同版本有区别,用./configure --help来查看参数选项列表):

--prefix:nginx的安装路径,默认/usr/local/nginx

--sbin-path:nginx可执行文件的安装路径,默认在/sbin/nginx

--conf-path:nginx.conf的路径,默认在/conf/nginx.conf.

--lock-path:nginx.lock文件的路径

--error-log-path:在nginx中没有指定access_log指令的情况下,默认的访问日志路径。

--with-http_ssl_model:开启http ssl模块,使NGINX可以支持HTTPS请求。这个模块需要已经安装OPNSSL。

--http-log-path:指定http默认访问日志的路径。

3、nginx启动

/usr/local/nginx/sbin/nginx -c /.../.../nginx.conf, 不加c参数,则默认加载/usr/local/sbin/nginx/conf/nginx.conf

4、nginx停止

获得进程号:

如果在nginx.conf中配置了pid文件,则文件中存储的是nginx主进程的进程号;

用ps -ef | grep nginx 查看nginx进程号;备注为mast process 的为主进程,worker process的为子进程。

(1)从容停止:kill -QUIT Nginx主进程号;或 kill -QUIT /usr/local/webserver/nginx/logs/nginx.pid

(2)快速停止:kill -TERM Nginx主进程号; 或 kill -TERM /usr/local/webserver/nginx/logs/nginx.pid (或者参数TERM 改为 INT)

(3)强制停止所有Nginx:pkill -9 nginx

5、nginx平滑重启

如果修改了配置文件(确保配置文件格式正确,否则还是加载原来的配置文件并提示错误)

kill -HUP Nginx主进程号

kill -HUP /usr/local/webserver/nginx/logs/nginx.pid

收到HUP信号时候,先尝试解析配置文件,如果成功则应用新的配置文件,否则继续使用旧额配置文件。

6、nginx的信号控制

TERM,INT 快速关闭

QUIT 从容关闭

HUP 平滑重启,重新加载配置文件

USR1 重新阿凯日志文件,在切割日志时候用途较大

USR2 平滑升级可执行程序

WINCH 从容关闭工作进程

7、nginx平滑升级

(1)将新版本nginx编译安装到旧版本的nginx路径下(替换前,先备份旧版本文件)

(2)发送kill --USR2 旧版本nginx主进程(旧版本会将pid文件命名.oldbin)

(3)新旧版本nginx同时运行,共同处理输入的请求

(4)旧的工作进程退出

(5)决定是否使用新版本:

kill -HUP 旧版本主进程号 (nginx将在不重载配置文件下启动它的工作进程)

kill -QUIT 新的主进程号(旧的主进程号):从容关闭其工作进程(看你是要升级还是恢复到升级之前的)

kill -TERM 新的主进程号:强制退出

如果恢复到升级之前,新的主进程退出后,旧的主进程会移除.oldbin前缀改为.pid

8、windows下nginx的启动停止等命令

start nginx.exe //启动nginx;

nginx.exe -s stop //停止nginx;

nginx.exe -s reload //重新加载nginx;

nginx.exe -s quit //退出nginx

nginx.exe -t //检查nginx.conf配置文件,linux中直接是: nginx -t


《实战nginx》第1、2章

上一篇:

下一篇: