什么是nginx

本文涉及的产品
传统型负载均衡 CLB,每月750个小时 15LCU
网络型负载均衡 NLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
简介: 什么是nginx

Nginx

1 什么是nginx?

Nginx (engine x) 是一个高性能的HTTP反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,公开版本1.19.6发布于2020年12月15日。

Nginx是一款轻量级Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好。

它是用C语言写的

2 使用场景

项目刚开始上线的时候,并发量比较小,访问的用户比较少,这时候一个JAR包启动就够了

网络异常,图片无法展示
|

但是慢慢的,由于用户越来越多,随之而来的是并发量,这时候一台服务器就满足不了需求,于是横向扩展,又增加了几台新的服务器,用户要访问的话,就需要增加一个代理服务器了,通过代理服务器来帮我们转发和出来请求

网络异常,图片无法展示
|

由于session不能共享,用户通过一个服务器代理其他服务器需要进行系统来回切换,体验极其不好,我们希望这个代理服务器可以帮助我们接收用户的请求,然后将用户的请求按照规则帮我们转发到不同的服务器节点之上,这个过程是无知感的,用户并不知道是哪个服务器返回的结果,我们还希望它可以按照服务器的性能提供不同的权重选择,保证最佳体验!这时候就用到了Nginx

3 Nginx的作用

1 HTTP代理,反向代理:作为web服务器最常用的功能之一,尤其是反向代理

正向代理

正向代理主要是代理客户端

(1)理解:客户发送请求给代理服务器,代理服务器代替客户把请求发送给服务器。

(2)特点:服务端收到的请求全部来自于代理服务器,如此一来起到了隐藏客户端的效果,和服务端进行信息交流的全部都是正向代理服务器。

(3)应用:翻墙

网络异常,图片无法展示
|

反向代理

反省代理主要是代理服务器

(1)理解:代理服务器将收集到的请求发给服务器,服务器处理完请求将结果返回给代理服务器,再由代理服务器将结果返回给客户端。

(2)特点:客户端收到的信息全部来自于代理服务器,如此一来达到了隐藏服务端的效果,如此一来客户端解析服务器域名时得到的将是反向代理服务器(也可以称作负载均衡服务器)的IP。

(3)应用:代理服务器可以根据某些策略对请求做一个合理的分发,比如分发给相对空闲的服务器,如此一来达到了负载均衡的效果。

正向代理和反向代理的区别

(1)正向代理中,客户端知道真正的服务端IP是什么,而服务端并不知真正的道客户端IP是什么;

(2)反向代理中,客户端不知道真正的服务端IP是什么,服务端也不知道真正的道客户端IP是什么;

(3)正向代理一般用来解决访问限制问题;

(4)反向代理一般用来提供负载均衡、安全防护等作用;

网络异常,图片无法展示
|

2 负载均衡(权重)

比如代理了三台服务器,一台服务器64G,一台服务器32G,一台服务器16G,那么肯定希望最大的这个64G的服务器能够处理更多的请求,这就是负载均衡,也叫权重

轮询

依次去循环去执行请求

网络异常,图片无法展示
|

加权轮询(权重)

可以给性能较好的服务器设置的权重较大去处理更多的请求

网络异常,图片无法展示
|

如何配置Nginx权重

网络异常,图片无法展示
|

3 iphash

iphash对客户端请求的ip进行hash操作,让根据hash结果将对同一个客户端ip的请求分发给一个服务器进行处理,可以解决session不共享的问题

但是由于nginx宕机会导致session丢失,不安全,一般通过redis做session共享

网络异常,图片无法展示
|

4 动静分离

在开发中,有些请求是需要后台处理的,有些请求是不需要后台处理的(比如css,js,html.jquery,img等文件),这些不需要经过后端处理文件称为静态文件,我们可以把它们放入nginx中提供系统效率

网络异常,图片无法展示
|

4 安装Nginx

windows安装nginx

进入官网:nginx: download

选择windows压缩包下载

网络异常,图片无法展示
|

下载到本地解压缩

网络异常,图片无法展示
|

启动nginx

双击exe启动文件(不推荐,容易一闪而过)

网络异常,图片无法展示
|

查看nginx配置

网络异常,图片无法展示
|

默认ip+端口是localhost:80

网络异常,图片无法展示
|

在本地目录输入cmd进行命令窗口 输入nginx.exe启动

网络异常,图片无法展示
|

网络异常,图片无法展示
|

没有日志信息,访问localhost:80或者省略80端口localhost进行访问,出现以下信息说明启动成功

网络异常,图片无法展示
|

5 Nginx的命令

网络异常,图片无法展示
|

网络异常,图片无法展示
|

相关实践学习
部署高可用架构
本场景主要介绍如何使用云服务器ECS、负载均衡SLB、云数据库RDS和数据传输服务产品来部署多可用区高可用架构。
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
2月前
|
缓存 Unix 应用服务中间件
|
8月前
|
缓存 应用服务中间件 nginx
Nginx使用总结
Nginx使用总结
68 0
|
11月前
|
负载均衡 应用服务中间件 nginx
nginx V1.0
nginx V1.0
|
12月前
|
负载均衡 应用服务中间件 Apache
理解nginx
理解nginx
55 0
|
负载均衡 算法 应用服务中间件
Nginx详解篇
Nginx详解篇
181 0
|
应用服务中间件 Apache 开发工具
关于Nginx,你需要知道的!
关于Nginx,你需要知道的!
174 0
|
缓存 负载均衡 前端开发
|
存储 缓存 安全
Nginx基本应用(一)
Nginx基本应用(一)
Nginx基本应用(一)
|
网络协议 应用服务中间件 网络安全
Nginx 实现OCSP Stapling
详解Nginx 如何实现OCSP Stapling
845 0
|
Unix 应用服务中间件 PHP