Nginx面试题
2024-06-10 18:22:07 0 举报
AI智能生成
登录查看完整内容
Nginx是一款高性能的HTTP和反向代理服务器,由于其稳定性、低资源消耗和丰富的模块支持而受到广泛应用。Nginx的核心特色包括事件驱动架构、多进程模型和异步I/O,这些特性使得Nginx能够处理大量的并发连接,同时保持低延迟和高吞吐量。
作者其他创作
大纲/内容
路径匹配优先级
location = / {proxy_pass http ://tomcat:8080/index}
如何把请求转发给后端应用服务器
location ~* \\ . (js|css|jpg|jpeg|gif|png|swf)$ {if (-f $request_filename) {expires 1h;break;}}
如何根据文件类型设置过期时间
location ^~/path/ {deny all;}
禁止访问某个目录
首先在 http 模块中配置使用 upstream 模块定义后台的 webserver 的池子,名为 proxy-web,在池子中 我们可以添加多台后台 webserver,其中状态 检查、调度算法都是在池子中配置;然后在 serverr 模块中 定义虚拟主机,但是这个虚拟主 机不指定自己的 web 目录站点,它将使用 location 匹配 url 然后转发 到上面定义好的 web 池子中,最后根据调度策略再转发到后台 web server 上 。
nginx负载均衡实现过程
负载均衡配置
http {……… .keepalive_timeout 60; ###设置客户端连接保持会话的超时时间,超过这个时间,服务器会关闭 该连接。 tcp_nodelay on;\\####打开 tcp_nodelay,在包含了 keepalive 参数才有效client_header_timeout 15; ####设置客户端请求头读取超时时间,如果超过这个时间,客户端 还没有发送任何数据, Nginx 将返回“Request time out(408)”错误client_body_timeout 15;\\####设置客户端请求主体读取超时时间,如果超过这个时间,客户端还没有发送任何数据, Nginx 将返回“Request time out(408)”错误send_timeout 15; ####指定响应客户端的超时时间。这个超过仅限于两个连接活动之间的时间,如 果超过这 个时间,客户端没有任何活动, Nginx 将会关闭连接。…… }
设置超时时间
好处:压缩是可以节省带宽,提高传输效率
坏处:但是由于是在服务器上进行压缩,会消耗服务器资源
开启压缩功能
Nginx是一个高性能的HTTP和反向代理服务器。同时也是一个 IMAP/POP3/SMTP 代理服务器。 官方 网站:http://nginx.org。
什么是nginx
支持 SSL 和 TLSSNI.
Nginx 代码质量非常高,代码很规范,手法成熟, 模块扩展也很容易。特别值得一提的是强大的 Upstream 与 Filter 链。
Nginx 采用了一些 os 提供的最新特性如对 sendfile (Linux2.2+) ,accept-filter (FreeBSD4.1+), TCP_DEFER_ACCEPT (Linux 2.4+)的支持,从而大大提高了性能。
免费开源,可以做高并发负载均衡。
nginx主要特征
启动 nginx 。
停止 nginx -s stop 或 nginx -s quit 。
重载配置 ./sbin/nginx -s reload(平滑重启) 或 service nginx reload 。
重载指定配置文件 .nginx -c /usr/local/nginx/conf/nginx.conf 。
查看 nginx 版本 nginx -v 。
检查配置文件是否正确 nginx -t 。
显示帮助信息 nginx -h 。
nginx 常用命令
工作模式及连接数上限
5种。1.轮询模式(默认)每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。 2.权重模式指定轮询几率, weight和访问比率成正比,用于后端服务器性能不均的情况3.IP_hash模式 (IP散列)每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。 4.url_hash模式5.fair模式按后端服务器的响应时间来分配请求,响应时间短的优先分配。
nginx负载均衡几种算法
分为master-worker模式和单进程模式。在master-worker模式下,有一个master进程和至少一个的 worker进程,单进程模式顾名思义只有一个进程。
nginx有几种进程模型
error_page 500 502 503 504 /50x.html;location = /50x.html { root / root;}
如何定义错误提示页面
location =开头表示精准匹配location = /get {#规则 A }
如何精准匹配路径
Nginx面试题
0 条评论
回复 删除
下一页