Nginx总结

news/2024/11/28 9:49:39/

目录

Nginx介绍

Nginx的作用

        反向代理

                项目架构

                实战:访问nginx服务器反向代理到另一台虚拟机上的tomcat服务器

        负载均衡

                项目架构

                实战:访问nginx服务器,是否反向代理到集群中的任意一台tomcat服务器,停止一台tomcat服务器,再次访问nginx服务器,是否还能正常访问

        动静分离

                项目架构:

                实战:在nginx服务器中编写html,访问nginx服务器中的静态资源


部分图片来自百战程序员 

Nginx介绍

Nginx是一款轻量级的Web服务器、反向代理服务器,由于它的内存占用少,启动极快,高并发能力强,在互联网项目中广泛应用。Nginx 专为性能优化而开发,使用异步非阻塞事件驱动模型

常见服务器

  • Apache
  • Tomcat

d31e5cc453284f47a7fe7d0671a6f5f3.png

举个栗子

没有Nginx的情况

4f21ce33f143453e9dee758bc06c958b.png

有了Nginx的话

c06cf583c8764beda928870ad86c9f75.png

Nginx的作用

        反向代理

正向代理

是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。正向代理的典型用途是为在防火墙内的局域网客户端提供访问internet的途径。正向代理一般是在客户端设置代理服务器,访问目标服务器,通过代理服务器转发请求,最终访问到目标服务器(类似梯子)

反向代理

反向代理服务器位于用户与目标服务器之间,但是对于用户而言,反向代理服务器就相当于目标服务器,即用户直接访问反向代理服务器就可以获得目标服务器的资源,反向代理服务器负责将请求转发给目标服务器。用户不需要知道目标服务器的地址,也无须在用户端作任何设定(如果资源紧张,web服务器可能都在内网,可以通过反向代理的功能,访问反向代理服务器,反向代理服务器将请求转发给web服务器)

正向和反向的区别:

正向代理帮助客户端访问服务器

反向代理帮助服务器服务

                项目架构

                实战:访问nginx服务器反向代理到另一台虚拟机上的tomcat服务器

地址前面需要添加协议,否则会报错

1、启动tomcat服务器

561f20be69654a7ea12e795d2f12c5e1.png

2、修改nginx服务器的配置文件nginx.conf,在http块中添加如下代码

3、运行nginx服务器,访问192.168.138.101,即可跳转到tomcat页面

        负载均衡

Nginx负载均衡是基于反向代理去实现的,通过在nginx.conf文件中定义服务器集群,然后再反向代理这个集群即可

                项目架构

                实战:访问nginx服务器,是否反向代理到集群中的任意一台tomcat服务器,停止一台tomcat服务器,再次访问nginx服务器,是否还能正常访问

1、定义服务器集群

2、反向代理服务器集群

3、运行nginx服务器,访问192.168.138.101,会跳转到tomcat页面

4、关闭一台tomcat再次访问查看是否可以访问成功,如果访问成功代表负载均衡配置成功

        动静分离

简单的来说动静分离就是将动态资源的请求让tomcat进行处理,静态资源的请求交给nginx处理,如对数据库进行操作,servlet,jsp就让其访问tomcat服务器,如照片、html、css等静态资源就让其访问nginx服务器

                项目架构:

                实战:在nginx服务器中编写html,访问nginx服务器中的静态资源

1、修改nginx.conf文件 

 2、访问nginx服务器,即可跳转到默认首页

 3、在以后得开发中我们就可以将静态资源放在nginx服务器中,通过nginx.conf文件定义静态资源的访问路径,动态资源放到tomcat中,通过nginx服务器的反向代理功能实现访问动态资源,这样就实现了动静分离


http://www.ppmy.cn/news/68972.html

相关文章

Redisson锁的分析

文章目录 一、分布式锁概念1、实现思路2、出现死锁问题如何避免死锁问题 锁过期和释放当前不属于当前线程的锁解决不是加锁线程释放锁锁的过期时间如何解决 二、Redisson分布式锁Redis的部署方式对锁的影响集群模式Redlock实现高可靠的分布式锁 三、代码分析V1代码无锁V2代码单…

基于AT89C51单片机的电子密码锁设计与仿真

点击链接获取Keil源码与Project Backups仿真图: https://download.csdn.net/download/qq_64505944/87779960?spm=1001.2014.3001.5503 源码获取 主要内容: 设计一个单片机电子密码锁,根据输入的数值判断是否正确,正确显示密码正确;错误时报警器发出蜂鸣。由单片机系统…

RabbitMQ养成记 (6. spingboot 集成 rabbitMQ,生产者/消费者)

Springboot集成 搞springboot的那群人 不喜欢造轮子,就喜欢搞各种集成。 首先创建一个springboot项目: 之前我们在方法中 创建工厂类配置, 现在直接在application.yml 中配置即可: spring:rabbitmq:host: **********username:…

Nvidia技术路线和卷积神经网络介绍

1.Nvidia技术路线概述 2.卷积神经网络介绍 软硬件平台 目的:用卷积神经网络(CNNs)将车前部摄像头捕捉到的原始像素图映射为汽车的方向操控命令。 训练:这套端到端学习系统使用了NVIDIA DevBox, 用Torch 7进行训练。 操作:一台 NVIDIA DRIVE PX 自动驾驶汽车计算…

Ch3.栈、队列、数组

文章目录 1.栈1.栈的基本概念2.栈的性质卡特兰数栈的出栈顺序3.栈的实现1.顺序栈 (栈的顺序存储实现)共享栈2.链栈(栈的链式存储实现)4.栈的应用(1) 括号匹配(2) 表达式求值(中缀表达式→后缀表达式)(3)递归(4)进制转换2.队列1.队列的概念2.队列的性质3.队列的实现(1)顺序队…

滨州软件著作权申请

各省、自治区、市版权局负责本辖区作者或者其他作权人作品的登记。国家版权局负责外国、台湾、香港、澳门作者或者其他作权人作品的登记。受国家版权局委托,中国版权保护中心负责外国、台湾、香港、澳门作者或者其他作权人作品的登记。 作者或者其他享有作权的公民所…

微服务 - Redis缓存 · 数据结构 · 持久化 · 分布式 · 高并发

一、分布式解决 Session 的问题 在单站点中,可以将在线用户信息存储在Session中,随时变更获取信息;在多站点分布式集群如何做到Session共享呢?架设一个Session服务,供多服务使用。 频繁使用的数据存在DB端&#xff0…

深入学习MYSQL-数据检索

前言 由于大部分基础知识都已经学过了,这里只把觉得应该记录一下的知识点做个笔记。然后以下笔记和sql均来自书籍(MYSQL必会知识),会根据看的其它书记继续调整和优化笔记。 LIMIT 注:这个平时的SQL查询没有什么区别,我主要展示一下在命令行…