更新时间:2020-11-04 17:47:12 来源:极悦 浏览2868次
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,也是目前百度、京东、新浪、网易、腾讯、淘宝等大型互联网公司的必备网站服务器。因此,也是目前这些大厂的面试必考题目之一,本文我们为大家带来了精选的10道Nginx面试题,但愿对于正在找工作的你,或者是学习中的程序员有所帮助。
1.什么是 Nginx?
Nginx是一个web服务器和反向代理服务器,用于HTTP、HTTPS、SMTP、POP3和IMAP协议。
2.使用“反向代理服务器”的优点是什么?
反向代理服务器可以隐藏源服务器的存在和特征。它充当互联网云和web服务器之间的中间层。这对于安全方面来说是很好的,特别是当使用web托管服务时。
3.容器与主机之间的数据拷贝命令?
Docker cp命令用于穷奇与主机之间的数据拷贝
主机到哦容器:docker cp /www 96f7f14e99ab:/www/
容器到主机:docker cp 96f7f14e99ab:/www /tmp
4.如何在生产中监控docker?
5.在Nginx中,如何使用未定义的服务器名称来阻止处理请求?
只需将请求删除的服务器就可以定义为:
server{
listen:80;
server_name "";
return404
}
这里,服务器名被保留为一个空字符串,它将在没有“主机”头字段的情况下匹配请求,而一个特殊的Nginx的非标准代码444被返回,从而终止连接。
6.请解释是否有可能将Nginx的错误替换为502错误、503?
502 =错误网关
503 =服务器超载
有可能,但是您可以确保fastcgi_intercept_errors被设置为ON,并使用错误页面指令。
7.在Nginx中,解释如何在URL中保留双斜线?
要在URL中保留双斜线,就必须使用merge_slashes_off;
语法:merge_slashes [on/off]
默认值: merge_slashes on
环境: http,server
8.请列举Nginx的一些特性。
反向代理/L7负载均衡器
嵌入式Perl解释器
动态二进制升级
可用于重新编写URL,具有非常好的PCRE支持
9.请解释Nginx如何处理HTTP请求。
Nginx 是一个高性能的 Web 服务器,能够同时处理大量的并发请求。它结合多进程机制和异步机制 ,异步机制使用的是异步非阻塞方式 ,接下来就给大家介绍一下 Nginx 的多线程机制和异步非阻塞机制 。
(1)多进程机制
服务器每当收到一个客户端时,就有 服务器主进程 ( master process )生成一个 子进程( worker process )出来和客户端建立连接进行交互,直到连接断开,该子进程就结束了。
使用进程的好处是各个进程之间相互独立,不需要加锁,减少了使用锁对性能造成影响,同时降低编程的复杂度,降低开发成本。其次,采用独立的进程,可以让进程互相之间不会影响 ,如果一个进程发生异常退出时,其它进程正常工作, master 进程则很快启动新的 worker 进程,确保服务不会中断,从而将风险降到最低。
缺点是操作系统生成一个子进程需要进行 内存复制等操作,在资源和时间上会产生一定的开销。当有大量请求时,会导致系统性能下降 。
(2)异步非阻塞机制
每个工作进程 使用 异步非阻塞方式 ,可以处理 多个客户端请求 。
当某个 工作进程 接收到客户端的请求以后,调用 IO 进行处理,如果不能立即得到结果,就去 处理其他请求 (即为 非阻塞 );而 客户端 在此期间也 无需等待响应 ,可以去处理其他事情(即为 异步 )。
当 IO 返回时,就会通知此 工作进程 ;该进程得到通知,暂时 挂起 当前处理的事务去 响应客户端请求 。
10.Nginx服务器上的 Master和进程分别是什么?
Master进程:读取及评估配置和维持 Worker进程:处理请求
Nginx是网页服务器运维人员必备技能之一,Nginx服务器的并发能力备受许多大型互联网公司青睐,所以在面试中Nginx相关的题目,基本上是必考的题目,希望大家可以更好的掌握掌握这10道精选Nginx面试题,能够让我们在面试的时候先声夺人,赢取先机,当然java程序员的面试是一个综合能力的考核,所以不至会考Nginx面试题相关的知识,而且应该全面去了解更多的知识,比如看看前辈们总结好的java面试题,可能会有更多的帮助。
0基础 0学费 15天面授
Java就业班有基础 直达就业
业余时间 高薪转行
Java在职加薪班工作1~3年,加薪神器
工作3~5年,晋升架构
提交申请后,顾问老师会电话与您沟通安排学习