做软件测试工作的人应该都知道nginx现已成为目前使用最广泛的web服务器和反向代理服务器,我们线上的Tomcat服务器一般都会由nginx进行代理,以此实现负载均衡的效果。下面给大家分享的是关于“nginx性能监控与调优”的内容,有不懂的可以咨询在线老师,一对一解答。
一、nginx启动、停止
1、nginx启动
nginx -s reload
如果在重启过程中报以下错误
nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed (2: No such file
or directory)
那么,就再次去检测我们的配置文件
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
2、nginx停止
nginx -s stop
检测配置文件
/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
二、nginx运行原理
1、nginx工作原理
nginx从结构的层面来划分可以分为三类:核心模块、基础模块、第三方模块。
核心模块主要包括:http模块、mail模块和event模块
基础模块主要包括:HTTP access模块、http rewrite模块、http proxy模块和http FastCGI模块
第三方模块主要包括:HTTP Upstream Request Hash模块、Notice模块和HTTP Access Key模块
event模块是nginx最核心模块,主要处理的是与服务器硬件的关系,例如磁盘的工作方式、网络端口的监听等。
nginx如果从功能的角度来划分可以分为:handler处理模块、filter过滤器模块、proxy模块。
handler处理模块:处理发送过来的请求,并对内容和header信息做适当的修改,再将内容输出到filter过滤器模块
filter过滤器模块:主要是对handler处理模块输出的信息进行修改并输出到客户端,即http responser
proxy模块:主要是http upstream类的模块,与服务和操作系统进行打交道
2、nginx进程模型
3、nginx HTTP请求过程
三、nginx配置上下文
1、nginx配置文件路径
/usr/local/nginx/conf/nginx.conf
配置文件主要有两个上下文
events {
.....
}
http {
.....
server {
......
}
location / {
......
}
}
除这些上下文之外的内容,我们把它叫做全局变量
serever上下文是在http上下文中来声明的,主要定义server相关信息,例如listen、server_name
location上下文(位置上下文)是在 http上下文中声明,主要是设置访问某个目录的权限
2、nginx常见配置含义
user:运行子进程的用户,master process主进程的用户是root
worker_process:服务器启动的进程数,设置与核心数一至
error_log:设置错误日志及错误日志级别
worker_connections:表示每个进程最多允许的连接数
use epoll:表示操作IO多复模型
include:定义mime的格式
default_type:表示传输字符串可以支持的格式
log_format:日志格式
access_log:设置access日志的路径及什么样的日志可以被记录
keepalive_timeout:长连接超时时间
listen:监听的端口
server_name:服务器名
今天关于“nginx性能监控与调优”的内容就学习完了,大家喜欢的话记得每天来这里和小编一起学习涨薪技能哦。(笔芯)
附:川石信息全国校区最新开班时间,课程资料获取13691729932(微信同号)。