Nginx基础讲解,5分钟上手系列

Nginx基础讲解

1. 什么是Nginx? Nginx是一个轻量级/高性能的反向代理Web服务器,用于HTTP、HTTPS、SMTP、POP3和IMAP协议。它实现非常高效的反向代理、负载平衡,他可以处理2-3万并发连接数,官方检测能支持5万并发。

2. Nginx有哪些优点? 跨平台、配置简单。 非阻塞、高并发连接:处理2-3万并发连接数,官方检测能支持5万并发。 内存消耗小:开启10个Nginx才占150M内存。 成本低,且开源。 稳定性高,宕机的概率非常小。 内置的健康检查功能:如果有一个服务器宕机,会做一个健康检查,在发送的请求接不会发送到宕机的服务器了。重新将请求提交到其他的节点上。

3. Nginx应用场景? http服务器。Nginx是一个http服务可以独立提供http服务。可以做网页静态服务器。 虚拟主机。可以实现在一台服务器虚拟出多个网站,例如个人网站使用的虚拟机。 反向代理,负载均衡。当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多态服务器集群可以使用Nginx做反向代理。并且多态服务器可以平均分担负载,不会应为某台服务器负载高宕机而某台服务器闲置的情况。 Nginx中也可以配置安全管理、比如可以使用Nginx搭建API接口网关,对每个接口服务进行拦截。

4. 什么是正向代理? 一个位于客户端和原始服务器之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标,然后代理向原始服务器转交请求并将获得的内容返回给客户端。 客户端才能使用正向代理。正向代理总结就一句话:代理端代理的时客户端

5. 什么是反向代理? 反向代理方式,是指以代理服务器来接受Internet上的连接请求,然后将请求,发给内部网络上的服务器并将从服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。

6. Nginx如何实现session共享? 每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。需要修改nginx的配置文件 tomcat集群实现session的共享:有几个tomcat,就复制了几个session,假如一个tomcat的session发生了改变,其余的tomcat的session也会复制发生改变。 使用客户端的cookie作为存放登录信息的媒介 6. Nginx动静分离 通过 location 指定不同的后缀名实现不同的请求转发。 ​ location匹配规则 ​ ~ 正则匹配, 区分大小写 ​ ~* 正则匹配, 不区分大小写 ​ ^~ 精确匹配, 如果该选项匹配,只匹配该选项,不匹配别的选项 ​ = 精确匹配, 这个不匹配其他人还有机会 ​ @ 定义一个命名的 location,使用在内部定向时,例如 error_page, try_files ​ 优先级: = > ^~ > ~ ~* 通过 expires 参数设置,可以使浏览器缓存过期时间。 是给一个资源设定一个过期时间,也就是说无需去服务端验证,直接通过浏览器自身确认是否过期即可,所以不会产生额外的流量。 此种方法非常适合不经常变动的资源。 例如设置 3d,表示在这 3 天之内访问这个 URL, 发送一个请求,比对服务器该文件最后更新时间没有变化。 如果没变则不会从服务器抓取, 返回状态码 304; 如果有修改则直接从服务器重新下载,返回状态码 200 7. Nginx原理 1)、一个Nginx的 mater 和 worker 2)、一个 master 和多个 woker 有好处 ​ (1)可以使用 nginx –s reload 热部署,利用 nginx 进行热部署操作 ​ (2)每个 woker 是独立的进程,如果有其中的一个 woker 出现问题,其他 woker 独立的, 继续进行争抢,实现请求过程,不会造成服务中断 ​3)、设置多少个 woker 合适 ​ worker 数和服务器的 cpu 数相等是最为适宜的 ​4)、连接数 worker_connection 发送请求,占用了 woker 的几个连接数? 答案:2 或者 4 个 nginx 有一个 master,有四个 woker,每个 woker 支持最大的连接数 1024,支持的最大并发数是多少? 答案: 普通的静态访问最大并发数是: worker_connections * worker_processes /2 而如果是 HTTP 作 为反向代理来说,最大并发数量应该是 worker_connections * worker_processes/4

猜你喜欢

转载自blog.csdn.net/m0_66194642/article/details/130483771