【Nginx】Nginx简介

news2024/12/24 21:24:14
  • 1. 什么是nginx
  • 2. 正向代理与反向代理
    • 2.1 概念
    • 2.2 区别
      • 正向代理:客户端 <一> 代理 一>服务端
      • 反向代理:客户端 一>代理 <一> 服务端
  • 3. 负载均衡
  • 4. 动静分离

1. 什么是nginx

Nginx (“engine x”) 是一个高性能的 HTTP 和反向代理服务器,特点是占有内存少,并发能力强。

Nginx 可以作为静态页面的 web 服务器,同时还支持 CGI 协议的动态语言,比如 perl、php等,但是不支持 java。Java 程序只能通过与 tomcat 配合完成。Nginx 专为性能优化而开发,性能是其最重要的考量,实现上非常注重效率 ,能经受高负载的考验,有报告表明能支持高达 50,000 个并发连接数。

2. 正向代理与反向代理

2.1 概念

正向代理是一个位于客户端和目标服务器之间的代理服务器(中间服务器)。为了从原始服务器取得内容,客户端向代理服务器发送一个请求,并且指定目标服务器,之后代理向目标服务器转交并且将获得的内容返回给客户端。正向代理的情况下客户端必须要进行一些特别的设置才能使用。

反向代理正好相反。对于客户端来说,反向代理就好像目标服务器。并且客户端不需要进行任何设置。客户端向反向代理发送请求,接着反向代理判断请求走向何处,并将请求转交给客户端,使得这些内容就好似他自己一样,一次客户端并不会感知到反向代理后面的服务,也因此不需要客户端做任何设置,只需要把反向代理服务器当成真正的服务器就好了。

2.2 区别

正向代理中,proxy和client同属一个LAN,对server透明; 反向代理中,proxy和server同属一个LAN,对client透明。 实际上proxy在两种代理中做的事都是代为收发请求和响应,不过从结构上来看正好左右互换了下,所以把前者那种代理方式叫做正向代理,后者叫做反向代理。

在这里插入图片描述

正向代理:客户端 <一> 代理 一>服务端

正向代理简单地打个租房的比方:

A(客户端)想租C(服务端)的房子,但是A(客户端)并不认识C(服务端)租不到。
B(代理)认识C(服务端)能租这个房子所以你找了B(代理)帮忙租到了这个房子。

这个过程中C(服务端)不认识A(客户端)只认识B(代理)
C(服务端)并不知道A(客户端)租了房子,只知道房子租给了B(代理)。

反向代理:客户端 一>代理 <一> 服务端

反向代理也用一个租房的例子:

A(客户端)想租一个房子,B(代理)就把这个房子租给了他。
这时候实际上C(服务端)才是房东。
B(代理)是中介把这个房子租给了A(客户端)。

这个过程中A(客户端)并不知道这个房子到底谁才是房东
他都有可能认为这个房子就是B(代理)的

由上的例子和图,我们可以知道正向代理和反向代理的区别在于代理的对象不一样,正向代理的代理对象是客户端,反向代理的代理对象是服务端。

3. 负载均衡

增加服务器的数量,然后将请求分发到各个服务器上,将原先请求集中到单个服务器上的情况改为将请求分发到多个服务器上,将负载分发到不同的服务器,也就是我们所说的负\载均衡
在这里插入图片描述

4. 动静分离

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

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/154832.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2022年度【产业数字化金铲奖】重磅来袭!

出品|产业家 第二届金铲奖来了&#xff01; 过去的一年时间里&#xff0c;产业家清晰地看到&#xff0c;数实融合的潮水更加汹涌澎湃且势不可挡&#xff0c;越来越多的企业开始寻求数字化转型&#xff0c;它们来自金融、工业、农业、医疗、能源等等。 产业数字化&#xff0…

ARM汇编 : 汇编指令,伪指令,汇编程序格式

ARM汇编指令ARM指令集特点ARM工作模式ARM寄存器ARM32ARM64ARM64汇编指令内存存储访问指令LDR /STR 指令LDP/STP指令&#xff08;LDR 的变种指令&#xff0c;能够同时操做两个寄存器&#xff09;LDRB /SDRB 指令(只操作一个字节)LDRH /STRH 指令(只操作两个字节)LDUR/STUR指令 (…

Flink之转换算子和一些计算案例(Transformation)

Flink之转换算子 &#xff08;Transformation&#xff09; [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lcaNaXGY645b2f5adabd496ebbee9edfedad6437.png)null)] 数据源读入数据之后&#xff0c;我们就可以使用各种转换算子&#xff0c;将一个或多…

雷达算法 | 一种适用于汽车雷达的聚类算法研究与分析

本文参考TI的一种适用于汽车雷达的聚类算法研究和实现.pdf文档&#xff0c;原文链接如下&#xff1a;https://www.ti.com.cn/cn/lit/an/zhca739/zhca739.pdfts1672973254109&ref_urlhttps%253A%252F%252Fwww.google.com.hk%252F。 由于不涉及硬件&#xff0c;因此本文仅对…

C生万物 | 反汇编深挖【函数栈帧】的创建和销毁

&#x1f451;作者主页&#xff1a;Fire_Cloud_1 &#x1f3e0;学习社区&#xff1a;烈火神盾 &#x1f517;专栏链接&#xff1a;万物之源——C 一文彻底搞懂函数栈帧创建和销毁的过程一、 什么是函数栈帧二、 理解函数栈帧能解决什么问题呢&#xff1f;三、 函数栈帧的创建和…

易基因|糖尿病大血管和微血管病变的表观遗传学调控机制(DNA甲基化+组蛋白修饰):综述

大家好&#xff0c;这里是专注表观组学十余年&#xff0c;领跑多组学科研服务的易基因。2022年12月09日&#xff0c;《Frontiers in Endocrinology》杂志发表了题为“Epigenetic basis of diabetic vasculopathy”的综述文章&#xff0c;综述了表观遗传学修饰如DNA甲基化和组蛋…

电脑开机出现英文字母开不了机?小白操作技巧

在使用电脑的过程中&#xff0c;有时我们会遇到这种情况&#xff0c;就是电脑开机出现英文字母开不了机&#xff0c;而且还伴随着黑屏背景出现。出现这种问题&#xff0c;你们知道这是什么原因吗&#xff1f;以及我们该如何解决&#xff1f;下面这篇文章就可以告诉你&#xff0…

Foundry 中文文档发布啦

Foundry是一个Solidity智能合约开发工具链。Foundry管理您的依赖关系、编译项目、运行测试、部署&#xff0c;并允许您通过命令行和Solidity 脚本与链交互。 Foundry 中文文档是基于官方 Foundry book 的翻译&#xff0c;全面介绍 Foundry 所有功能。 使用Foundry的好处 Fou…

lvs负载均衡、nginx基本内容复习

文章目录前言一、LVSkeepalived实现高可用负载均衡二、三种不同模式实现负载均衡的区别与优缺点NAT模式DR直连路由模式TUN隧道模式三、Nginx之编译、负载均衡实现rr算法实现负载均衡ip_hash算法四、nginx平滑升级前言 一、LVSkeepalived实现高可用负载均衡 C/S架构和B/S架构&…

UWB室内定位系统的优势与好处

UWB定位系统的优势整理1、精度高&#xff1a;在室内定位领域&#xff0c;能够做到厘米级高精度定位的技术非UWB定位莫属。UWB采用TDOA&#xff08;到达时间&#xff09;算法&#xff0c;测量电磁波从发射端到达接收端所用的时间&#xff0c;分布在房间内的几个接收端同时接收到…

nginx小结二:高可用

nginx小结二&#xff1a;高可用nginx作为负载均衡器&#xff0c;所有请求都到了nginx&#xff0c;可见nginx处于非常重点的位置&#xff0c;如果nginx服务器宕机后端web服务将无法提供服务&#xff0c;影响严重。有鉴于此需要建立一个备份机&#xff0c;主服务器和备份机通过定…

用迭代局部搜索求解TSP问题(python)

文章目录1.迭代局部搜索(ILS)2.用ILS解决TSP问题2.1 函数模块2.2 主函数2.3 berlin52数据集测试1.迭代局部搜索(ILS) 关于迭代局部搜索(ILS iterated local search)的框架和应用总结可以阅读文献Iterated Local Search: Framework and Applications ILS的核心思想&#xff1a;…

【Kubernetes 企业项目实战】02、基于 Prometheus 和 K8s 构建智能化监控告警系统(下)

目录 一、可视化 UI 界面 Grafana 的安装和配置 1.1 Grafana 介绍 1.2 安装 Grafana 1.3 Grafana 界面接入 Prometheus数据源 1&#xff09;登录 grafana 2&#xff09;配置 grafana 界面 3&#xff09;导入的监控模板 二、kube-state-metrics 组件 2.1 kube-state-m…

JS的基础语法

作者&#xff1a;~小明学编程 文章专栏&#xff1a;JavaEE 格言&#xff1a;热爱编程的&#xff0c;终将被编程所厚爱。 目录 JavaScript的书写形式 行内式 内嵌式 外部式 注释 输入输出 输入 输出 JS的语法规则 变量 数据类型 数字类型 字符串类型 布尔类型 运算…

YED-M724嵌入式4G Cat1 核心板介绍

YED-M724嵌入式4G Cat1 核心板简介YEDM724 核心板是由银尔达&#xff08;yinerda&#xff09;基于合宙Air724 模组推出的低功耗&#xff0c;超小体积&#xff0c;高性能嵌入式4G Cat1 核心板。YED-M724嵌入式4G Cat1 核心板特点1、支持5-16V 供电&#xff1b;2、工作环境为-35℃…

基于轻量级YOLOV5融合RepVGG的电梯内电动车检测识别分析系统

RepVGG: Making VGG-style ConvNets Great Again 是2021 CVPR的一篇论文&#xff0c;正如他的名字一样&#xff0c;使用structural re-parameterization的方式让类VGG的架构重新获得了最好的性能和更快的速度。将RepVGG的设计思想融合进入到yolov5目标检测模型中是否有性能的提…

多线程案例-实现定时器

1.定时器是什么定时器是软件开发中的一个重要组件,功能是当达到一个特定的时间后,就执行某个指定好的代码定时器是一个非常常用的组件,特别是在网络编程中,当出现了"连接不上,卡了"的情况,就使用定时器做一些操作来止损标准库中也提供了定时器标准库中的Timer类标准库…

阿里妈妈Dolphin智能计算引擎基于Flink+Hologres实践

作者&#xff1a;徐闻春&#xff08;花名 陌奈&#xff09; 阿里妈妈事业部技术专家 本文整理至FlinkHologres实时数仓Workshop北京站&#xff0c;点击查看视频回放>>> 阿里妈妈数据引擎团队负责广告营销计算引擎Dophin的开发&#xff0c;目前支撑百万级广告主的营销…

ios打包证书申请流程

目前的APP开发&#xff0c;多端开发成为了主流&#xff0c;所以开发APP很多都是使用uniapp来开发&#xff0c;而且都是使用windows电脑来开发。但是在打包ios应用的时候&#xff0c;是需要一个p12格式的打包证书和profile描述文件的。 那么这两个文件如何申请呢&#xff1f;这…

关系抽取Casrel实现(Pytorch版)

前言 关系抽取是自然语言处理中的一个基本任务。关系抽取通常用三元组(subject, relation, object)表示。但在关系抽取中往往会面临的关系三元组重叠问题。《A Novel Cascade Binary Tagging Framework for Relational Triple Extraction》提出的CASREL模型可以有效的处理重叠关…