【总结】11条nginx优化方法助力你的运维生涯

天府云创&恩威科技提醒,本文阅读时间5分钟


隐藏nginx header里版本号信息

1.查看版本号

2.隐藏版本号

在nginx配置文件的http标签内加入“server_tokens off; ”参数,也可以放大server标签和location标签中,如下:

再此查看如下,浏览器访问错误页面也就没有版本号了

更改源码隐藏软件名称及版本号

在nginx编译安装之前,先更改,之后再编译安装

1.更改版本号

修改nginx-1.3.4/src/core/nginx.h

修改后查看header结果:

2.改nginx-1.6.12/src/http/ngx_http_header_filter_module.c

需要修改的字符串

修改后的字符串

3.修改ngx_http_special_response.c

修改为:

更改掉nginx默认用户及用户组(worker进程服务用户优化)

1.查看默认配置如下:

默认情况下,nginx服务启动,使用的用户和组默认都是nobody,

将web用户改为特殊的用户名如:nginx或更特殊点的dabaojian,但是这个用户必须是系统存在的。

2.建立nginx用户

3.配置文件nginx.conf中修改(也可以编译安装时指定默认)

在配置文件最外层上面

4.让woker进程使用普通用户运行
为master服务降权:使用非root跑nginx master

注意:不能用80特权端口 ,前端nginx反向代理转端口

配置nginx worker进程个数

nginx由master和worker进程组成,master进程相当于管理员,worker进程为用户提供服务

一般设置为cpu核数或则核数x2,用top按1查看

修改nginx.conf配置文件第一行

根据cpu核数进行nginx进程优化

把几个进程分配在一个cup上,cup亲和力

1.不同cpu设置如下

四核cpu配置:

八核cpu服务器参数配置:

2.官方文档说明

nginx事件处理模型优化

nginx的连接处理机制在不同的操作系统上采用不用的IO模型,在linux下,nginx使用epoll的IO多路复用模型,在freebsd使用kqueue的IO多路复用模型,在solaris使用/dev/pool方式的IO多路复用模型,在windows使用的icop等等。

根据系统类型不同选择不同的事务处理模型,选择有“use [ kqueue | rtsig |epool |dev/pool |select |pllo ];”我们使用的是Centos6.5的linux,因此将nginx的事件处理模型调整为epool模型。

具体参数如下在优化4下边挨着:

调整nginx worker单个进程允许的客户端最大连接数

这个值根据服务器性能和程序的内存来指定(一个进程启动使用的内存根据程序确定)

这个参数是单个进程的最大链接数,实际最大链接数是worker技能书乘以这个数。

Max_client=worker_processes*worker_connections

配置nginx worker进程最大打开文件数

相当于系统ulimit -HSn,应该是总的。

理念:配置参数不是越大越好,最好设为服务器承受的极限点。

开启高效的文件传输模

在http字段设置

tcp_nopush参数可以允许把http response header和文件的开始放在一个文件里发布,积极的作用是减少网络报文段的数量。

设置连接超时时间

保护服务器资源,硬件CPU mem,连接数。

建立连接也是要消耗资源的,我们一般断掉那些连上的链接,但是不做事的

php网站建议短连接,PHP程序建立连接消耗的资源和时间要少。

JAVA网站建议长连接,JAVA程序建立连接消耗的资源和时间要多。

在http字段设置

上传文件大小限制(动态应用)



    今日值班: 学习顾问,可甜蜜贴心沟通,可严谨职业指导,爱水果也爱生活,会创意更爱学习,陪伴你的成长之路。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值