Nginx 介绍及反向代理

一、Nginx 介绍

1.1、介绍

Nginx可以用作HTTP服务器和代理服务器,主要功能可以用作负载均衡,请求转发

1.2、HTTP服务器

可以提供HTTP服务的计算机就是一个http服务器,比如我们电脑上安装了Tomcat,那么这台电脑我们可以称为HTTP服务器。
其实服务器就是一台配置很高的电脑,而且这台电脑上安装了一些服务软件可以提供对应的服务。比如:Mysql可以提供数据库服务,tomcat,可以提供http服务

1.3、概述

用户(客户端)通过访问代理服务器(代理)去获取资源(服务器),它的特点是服务器只知道请求来自哪个代理服务器而不知道来自哪个具体的客户端。

1.4、 应用场景

比如FQ工具,我们想要访问国外的网站,或者玩国外的游戏等等。
在这里插入图片描述

1.5、 作用

主要是应用在分布式系统中,我们将用户(客户端)的请求发送到nginx上,再由nginx将请求发送到具体的服务器上处理,这个时候客户端是明确的,但是服务器是不明确的。

1.5.1 分布式系统中经常使用如图:

在这里插入图片描述

1.6、请求转发

用户将请求先发送到nginx上,再由nginx请求对应的服务器即可。

1.7、负载均衡

在我们大型网站中,用户太多的话,一台服务器是支撑不了这么庞大的业务,我们就需要增加节点(服务器),这些节点的功能是一样的,我们通过nginx将新的请求发送到负载最小的那台节点上。如图:
在这里插入图片描述

1.8、正向代理和反向代理区别

正向代理明确服务器所在位置,但是不知道客户端,反向代理直到客户端不知道服务器,正向代理主要使用在不能直接访问数据的场景下,反向代理主要使用在分布式系统中

1.9、分布式和集群区别

两者都是用来解决网站高并发问题的手段,就是用户很多,一台服务器支撑不住。
分布式:将一个系统拆分成多个模块,分别部署到多个节点上,我们只需要将请求发送到对应的节点上即可,出现的问题是服务器间的通信问题,数据交互问题,我们可以使用网络IO解决。
集群:将系统整个部署到多台节点上,出现的问题是请求发送到那台节点上处理,我们可以使用nginx做负载均衡
分布式加集群:将系统拆分成多个模块,并且每个模块部署多份这种方式是目前解决高并发问题最终的方案了。

1.10、项目部署

我们开发好的项目最终是要部署到服务器上,对外提供访问方式,我们的项目可以部署到自家购买的服务器上,也可以其租用一些云服务器,将系统部署到云服务器上,我们可以通过注册或者购买域名(www.xxx.com)的方式对外提供网站入口。

猜你喜欢

转载自blog.csdn.net/qq_44776691/article/details/88637052
今日推荐