1.初始 Nginx

1.初始 Nginx

@


先看 2 个实际需求,引出 Nginx

需求 1: 访问不同微服务

示意图:

在这里插入图片描述

需求 2: 轮询访问服务

示意图:

在这里插入图片描述

解决方案: Nginx:

  • 反向代理:
  • 负载均衡:
  • 动静分离:

在这里插入图片描述

  • 高可用集群:

    Nginx 在分布式微服务架构的位置

在这里插入图片描述

1. Nginx 的概述

Nginx 是什么?能做什么?

  1. 是什么: Nginx 是("engine x") 是一个高性能的 HTTP 和反向代理 Web 服务器
  2. 能做什么: 反向代理,负载均衡,动静分离,高可用集群

厉害之处: 高性能,高负载,有报告表明能支持高达 50,000 个并发连接数。

更多详细说明:https://lnmp.org/nginx.html

在这里插入图片描述

官方地址:https://nginx.org/

在这里插入图片描述

官方使用文档:https://nginx.org/en/docs/

在这里插入图片描述

2. Nginx 核心功能的详细说明

2.1 正向代理

一句话:如果我们要访问 www.google.com 但是直接访问不到,则需要通过代理服 务器来访问,这种代理服务就称为正向代理
在这里插入图片描述

图解说明:

  1. 我们知道 www.google.com , 但是访问不到,所以使用代理服务器帮助我们即客户端来上网 注意帮助的对象是客户端 这种代理我们称为 **正向代理. **

  2. 正向代理同时也隐藏了客户端信息.

  3. 再次说明,正向代理帮助的是客户端 因此可以把 客户端+正向代理服务 , 视为一个整体,进行理解。

  4. 正向代理:是我们客户端自己知道代理的服务对象是谁,同时客户端自己可以指定 代理访问的对象是谁。

2.2 反向代理

一句话:客户端将请求发送到代理服务器,由代理服务器去选择目标服务器获取数据后,返回给客户端,这种代理方式为反向代理

在这里插入图片描述

图解说明:

  1. 项目设计者,不希望客户端直接访问目标 Web 服务器(比如:目标 Web 服务器是集群,如果直接访问就会提供多个公网 IP),而是希望提供一个统一的访问IP,这个是理解反向代理的前提 ,即为什么要反向代理。
  2. 反向代理帮助的对象是目标 Web 服务器
  3. 当客户端请求达到反向代理服务后,由反向代理服务来决定如何访问目标 Web 服务器(或者是哪个 Web 服务器),这个过程对客户端是透明的。
  4. 反向代理服务会暴露公共的IP,只要能上网,就可以访问,但是对于反向代理服务器管理的/代理的 Web 服务器通常是在局域网内,不能直接访问,只能通过反向代理来访问。
  5. 我们可以将 反向代理服务 + 反向代理服务代理的 Web 服务器视为一个整体。
  6. 反向代理会屏蔽内网服务器(也就是他代理的服务)信息,并实现负载均衡访问。

2.3 负载均衡

一句话:当客户端向反向代理服务器(比如 Nginx)发出请求,如果 Nginx 代理了多个 WEB 服务器(集群),Nginx 会将请求/负载分发到不同的服务器,也就是负载均衡

在这里插入图片描述

2.4 动静分离

一句话:为了加快网站的解析速度,可以把动态资源和静态资源由不同的服务器来解析,降低单个服务器的压力

传统的项目资源部署:

在这里插入图片描述

动静分离项目资源部署:

在这里插入图片描述

3. 最后:

“在这个最后的篇章中,我要表达我对每一位读者的感激之情。你们的关注和回复是我创作的动力源泉,我从你们身上吸取了无尽的灵感与勇气。我会将你们的鼓励留在心底,继续在其他的领域奋斗。感谢你们,我们总会在某个时刻再次相遇。”

在这里插入图片描述

posted @   Rainbow-Sea  阅读(30)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示