什么是Nginx

在此之前也介绍过相干的内容与装置过程,介于理论生产运维环境中应用之多,还是有必要具体理解和了解它的一些弱小的性能与个性。

Nginx作为一个轻量级的HTTP服务器,相比Apache劣势也是比拟显著的,在性能上它占用资源少,能反对更高更多的并发连贯,从而达到进步拜访效率;在性能上它是一款十分优良的代理服务器与负载平衡服务器;在装置配置上它装置,配置都比较简单

Nginx的劣势简介:

常常在运维面试中,面试官会问到,你们用什么HTTP服务器啊?为什么用它??

1、作为WEB服务器而言,Nginx解决动态文件的效率比拟高

2、作为代理服务器而言,Nginx能够实现无缓存的反向代理减速来进步WEB站点的运行速度,进步用户拜访的体验

3、作为负载平衡服务器而言,反对的利用较多,同时也反对容错性能,自带算法进行负载平衡调度

4、性能方面而言,采纳内核poll模型,反对更多的并发连贯,官网显示最大可反对50000个并发连贯的申请响应,但占用资源很少且十分稳固

Nginx日常配置优化

1、日志切割

因为Nginx没有Apache服务的cronolog日志切割性能,所以须要进行相干优化解决,能够编写脚本来主动切割日志文件

#!/bin/shlogpath="/nginx/logpath"nginxlogs="/var/log/nginx/"mkdir -p  $logpath/$(date +%Y)mv $nginxlogs/access.log $logpath/$(date +%Y)/access_$(date +F).logmv $nginxlogs/error.log $logpath/$(date +%Y)/access_$(date +F).logkill -USR1 `cat /var/log/nginx/nginx.pid`  

##通过USR1信号来管制过程,从而从新生成一个新的日志文件

nginx对过程的管制性能十分强,能够通过信号指令来管制过程,罕用信号如下

QUIT 解决完以后申请后敞开过程

HUP 从新加载配置,不会中断用户的拜访申请

USR1 用于切割日志

USR2 用于平滑降级可执行程序

最初将脚本执行命令退出到定时工作来实现主动切割日志

2、nginx中FastCGI参数优化

进步nginx环境下PHP的运行效率,能够将上面的配置退出到主配置文件中

fastcgi_cache_path /application/nginx/fastcgi_cache_levels=1:2 keys_zone=TEST:10m inactive=5m;fastcgi_connect_timeout 300;fastcgi_send_timeout 300;fastcgi_read_timeout 300;fastcgi_buffer_size 64k;fastcgi_buffers 4 64k;fastcgi_busy_buffers_size 128k;fastcgi_cache TEST;fastcgi_cache_valid 200 302 1h;fastcgi_cache_valid 3011d;fastcgi_cache_valid any 1m;

##应答缓存工夫

3、nginx的HTTPgzip模块配置

#查看nginx编译参数[root@centos7 ~]# /usr/local/nginx/sbin/nginx -Vnginx version: nginx/1.12.0built by gcc 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC) built with OpenSSL 1.0.1e-fips 11 Feb 2013TLS SNI support enabledconfigure arguments: --with-http_stub_status_module --with-http_gzip_static_module --with-http_ssl_module --prefix=/usr/local/nginx

能够看出在编译时已加上此模块,因而只须要在配置文件里进行配置即可

 gzip  on; gzip_min_length 1k; gzip_buffers 4 16k; gzip_http_version 1.1; gzip_comp_level 2; gzip_types text/plain application/x-javascript text/css application/xml; gzip_vary on;

更多技术干货,可关注民工哥微信公众号

一起交换,共同提高!!!