文章目录
- 1.什么是Nginx?
- 2. 为什么要用Nginx
- 3.为什么Nginx性能这么高?
- 4.Nginx怎么处理请求的?
- 5.什么是正向代理和反向代理?
- 6.使用“反向代理服务器的优点是什么?
- 7.Nginx的优缺点?
- 8.Nginx应用场景?
- 9.Nginx目录结构有哪些?
- 10.Nginx配置文件nginx.conf有哪些属性模块?
- 11.location的作用是什么?
- 12.location的语法
- 13.Location正则
- 14.NGINX原理
- 14.nginx设置多少个worker
- 15.worker_connection
1.什么是Nginx?
Nginx是一个 轻量级/高性能的反向代理Web服务器,他实现非常高效的反向代理、负载平衡,他可以处理2-3万并发连接数,官方监测能支持5万并发,现在中国使用nginx网站用户有很多,例如:新浪、网易、 腾讯等。
2. 为什么要用Nginx
跨平台、配置简单、方向代理、高并发连接:处理2-3万并发连接数,官方监测能支持5万并发,内存消耗小:开启10个nginx才占150M内存 ,nginx处理静态文件好,耗费内存少,
而且Nginx内置的健康检查功能:如果有一个服务器宕机,会做一个健康检查,再发送的请求就不会发送到宕机的服务器了。重新将请求提交到其他的节点上。
使用Nginx的话还能:
节省宽带:支持GZIP压缩,可以添加浏览器本地缓存
稳定性高:宕机的概率非常小
接收用户请求是异步的
3.为什么Nginx性能这么高?
因为他的事件处理机制:异步非阻塞事件处理机制:运用了epoll模型,提供了一个队列,排队解决
4.Nginx怎么处理请求的?
nginx接收一个请求后,首先由listen和server_name指令匹配server模块,再匹配server模块里的location,location就是实际地址
5.什么是正向代理和反向代理?
正向代理就是一个人发送一个请求直接就到达了目标的服务器
反方代理就是请求统一被Nginx接收,nginx反向代理服务器接收到之后,按照一定的规 则分发给了后端的业务处理服务器进行处理了
6.使用“反向代理服务器的优点是什么?
反向代理服务器可以隐藏源服务器的存在和特征。它充当互联网云和web服务器之间的中间层。这对于安全方面来说是很好的,特别是当您使用web托管服务时。
7.Nginx的优缺点?
优点:
占内存小,可实现高并发连接,处理响应快
可实现http服务器、虚拟主机、方向代理、负载均衡
Nginx配置简单
可以不暴露正式的服务器IP地址
缺点:
动态处理差:nginx处理静态文件好,耗费内存少,但是处理动态页面则很鸡肋,现在一般前端用nginx作为反向代理抗住压力
8.Nginx应用场景?
http服务器。Nginx是一个http服务可以独立提供http服务。可以做网页静态服务器。
虚拟主机。可以实现在一台服务器虚拟出多个网站,例如个人网站使用的虚拟机。
反向代理,负载均衡。当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载,不会应为某台服务器负载高宕机而某台服务器闲置的情况。
nginz 中也可以配置安全管理、比如可以使用Nginx搭建API接口网关,对每个接口服务进行拦截。
————————————————
9.Nginx目录结构有哪些?
10.Nginx配置文件nginx.conf有哪些属性模块?
全局块,event块,http块
11.location的作用是什么?
location指令的作用是根据用户请求的URI来执行不同的应用,也就是根据用户请求的网站URL进行匹配,匹配成功即进行相关的操作。
12.location的语法
13.Location正则
14.NGINX原理
master和worker
争抢机制
一个master和n和worker的优势:
1.可以nginx -s reload 热部署
2.对于每一个worker都是一个独立的进行,不用加锁,可以提高性能。
3.一个进程退出后,不会影响其他的进程。
14.nginx设置多少个worker
nginx和redis一样都使用了io多路复用机制,每一个worker都是一个进程。
一般来说worker数量和cpu数量相等最好。
15.worker_connection
1.发送请求后,会占用worker多少个连接数
2/4个
2:worker - tomcat
4:client - worker - tomcat
2.nginx一个master,4个worker,每一个worker支持连接数为1024,则nginx支持的最大并发数是多少
4 * 1024 /2或 4 * 1024 / 4