Part2今日主题:Nginx简单介绍

Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。

相信大家看了这段话也是不知道在说啥意思,OK,我们现在就来简单了解一下nginx的功能,首先它的功能有:正向代理,反向代理,负载均衡,动静分离等。

1正向代理

我们需要访问某些网站,但是不能直接访问,我们需要通过代理服务器去访问,这就是正向代理。Nginx快速入门_反向代理

2反向代理

假如我们在服务器上部署一个项目,开放的端口是8080端口,也就是说我们可以通过ip:8080端口来进行访问项目,但是这样去访问项目会有一个弊端,就是别人知道了你的服务器地址和开放的端口,别人就可以对你的服务器进行攻击。

这时候我们就希望通过一种方式来隐藏真实的服务器地址,这就是反向代理。

假如说我们有一个域名:www.javacode.com,那么大家去访问这个地址的时候,基本上都认为他是开放80端口的,但其实不是,他用了反向代理工具将80端口的请求,转发到其他端口去了。Nginx快速入门_nginx_02

3负载均衡

这个玩意听字面意思大家是可以听懂的,就是按照一定的规则将请求均匀的进行分配。负载均衡的策略有:


  • 轮询策略:轮着来执行(默认是轮询策略)
  • 权重策略:按照权重来分配执行机会
  • ip hash:比如访问网站,他有多个ip配置了,第一次你访问了其中的某个ip,后面访问就直接是这个IP了,不会切换到其他ip,可以解决session的问题
  • fair(第三方):按后端服务器的响应时间来分配请求,响应时间短的优先分配。

Nginx快速入门_nginx_03

4动静分离

为了加快网站的解析速度,可以把动态页面和静态页面由不同的服务器来解析,加快解析速度。降低原来单个服务器的压力。

Nginx快速入门_反向代理_04

5配置文件

配置文件主要包含三个部分:

全局块:配置服务器整体运行的配置指令

比如worker_processes1;处理并发数的配置

events块:影响 Nginx 服务器与用户的网络连接

比如 worker_connections 1024; 支持的最大连接数为 1024

http 块

还包含两部分:http 全局块server 块

视频讲解可以看一下我的B站视频:https://www.bilibili.com/video/BV1mv411P7eX?share_source=copy_web


欢迎关注:java后端指南

Nginx快速入门_反向代理_05