>  기사  >  데이터 베이스  >  《实战nginx》第1、2章

《实战nginx》第1、2章

WBOY
WBOY원래의
2016-06-07 15:07:261102검색

该文是学习《实战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章






성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.