Nginx 学习笔记总结(一)

1. 在开发中,Nginx担任什么角色?


平时我们写过的小项目,一般都是一个客户端+一台服务器(开启这tomcat)这样的形式,一般都是在并发量小,用户使用的少的情况下。

在这里插入图片描述

如果用户联不断的增加,并发量不断的增大,那么一台服务器就无法满足需求。
在这里插入图片描述


所以我们又横向拓展服务器,但是横向拓展服务器无法让客户端按照某种格式来进行合理的访问每一台服务器。所以中间又加了一层,专门来进行反向代理等等操作的服务器,这台服务器就是nginx。

架构思维有一个不变的理论:没有什么是加一层解决不了的问题。
在这里插入图片描述

2. 什么是Nginx?


在这里插入图片描述

3. Nginx功能 之 反向代理

3.1 什么是正向代理?


正向代理,就是代理客户端来访问服务器的。
在这里插入图片描述

3.2 什么是反向代理?


与正向代理相反,正向代理是代理客户端的,而反向代理就是代理服务器的。
在这里插入图片描述

3. Nginx功能 之 负载均衡


Nginx提供的负载均衡策略有两种:内置策略和扩展策略。

内置策略有:

  • 轮询(默认)
  • 加权轮询
  • Iphash绑定

轮询:
在这里插入图片描述


加权轮询:
在这里插入图片描述


iphash是对客户端请求的ip进行一个hash操作,可以说是固定的ip进入固定的tomcat服务器,这种方式可以解决session不共享的问题,但是性能低一些,如果一台服务器宕机了,那么这个对应网段的ip就没法访问了。

在这里插入图片描述

4. Nginx功能 之 动静分离


动静分离:在我们软件开发中,有些请求是需要后台处理,而有些静态资源时不需要后台来处理的。这些静态资源文件,直接将它放到nginx系统的本地。这样来实现动静分离。

在这里插入图片描述

5. Nginx安装

5.1 window安装


去官方下载,一般下载就是下载稳定版本。

下载后,放到一个没有中文的路径下面,解压出来。找到nginx.conf文件,可以配置端口号。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5.2 linux安装


首先,确保本机上没有nginx!使用whereis nginx命令查找。
(whereis命令用于查找文件。)


第一步:下载nginx的linux版本的解压包。
在这里插入图片描述


第二步:tar -zxvf 命令解压文件。
在这里插入图片描述


第三步:依次执行./configure , make命令和make install命令:

linux编译安装中configure、make和make install各自的作用:

  • ./configure是用来检测你的安装平台的目标特征的。比如它会检测你是不是有CC或GCC,并不是需要CC或GCC,它是个shell脚本。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • make是用来编译的,它从Makefile中读取指令,然后编译。

在这里插入图片描述

  • make install是用来安装的,它也从Makefile中读取指令,安装到指定的位置。
    在这里插入图片描述

第四步:安装完成后,默认就放到了 /user/local/nginx下面。

  • 我们可以去/user/local/nginx/sbin下面去执行,sbin目录默认就是放置启动文件的。

当我在sbin目录下,执行./nginx 启动时,遇到错误:
在这里插入图片描述
原因很简单就是端口被占用了,去nginx.conf配置个别的端口,或者把当前端口的进程kill一下。。

在这里插入图片描述

启动成功后,nginx是没有任何提示的。
在这里插入图片描述

通过访问ip:端口查看到welcome就安装成功了:
在这里插入图片描述


启动成功后,我们可以使用linux命令的netstat命令查看端口情况:

  • Linux netstat 命令用于显示网络状态。利用 netstat 指令可让你得知整个 Linux 系统的网络情况。
  • 可以通过netstat -anp 或 netstat -nlp 来查看哪些端口被打开。(注:加参数’-n’会将应用程序转为端口显示,即数字格式的地址)

参数:

  • -a或–all 显示所有连线中的Socket。
  • -n或–numeric 直接使用IP地址,而不通过域名服务器。
  • -p或–programs 显示正在使用Socket的程序识别码和程序名称。
  • -l或–listening 显示监控中的服务器的Socket。
    在这里插入图片描述
    (注意防火墙和云服务器的安全规则。)

6. Nginx命令


在 /user/local/nginx/sbin目录下,执行以下命令:

  • ./nginx 启动nginx命令。
  • ./nginx -s stop 停止nginx命令。
  • ./nginx -s quit 安全退出nging命令。
  • ./nginx -s reload 重新加载配置文件命令。

7. Nginx 实战演示

7.1 启动多台tomcat服务器


首先,我在我的云服务器上面,启动了三台tomcat服务器。

搭建的时候注意的几个事项:

  • 三台服务器的shutdown端口和访问入口端口,必须不能相同!!!
  • 云服务器要配置安全规则。
  • 如果tomcat启动不起来或者报错,可以去log文件下的catalina.xxx.log文件查看错误。
    在这里插入图片描述
    在这里插入图片描述

7.2 Nginx配置的详解


打开nginx.conf文件:
在这里插入图片描述

在这里插入图片描述

完成上面这些步骤,就已经实现了一个nginx反向代理的效果。

当我访问nginx的ip和对应端口(一般是80)就能访问到三台tomcat中的一台了。

  • 2
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xupengboo

你的鼓励将是我创作最大的动力。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值