【nginx 第一篇章】认识一下 NGINX 服务器

news2024/12/23 3:39:28

一、简介

Nginx (engine x) 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。由俄罗斯程序员 Igor Sysoev 开发,并在2004年首次公开发布。Nginx 以其高并发处理能力、低内存消耗、稳定性、丰富的功能集、简单的配置以及低学习曲线而广受欢迎。Nginx 通常被用作 Web 服务器来托管网站,但也可以有效地用作反向代理、负载均衡器和 HTTP 缓存。

二、Nginx 的主要特点

1、高性能:Nginx 采用了异步非阻塞的事件驱动模型,这使得它能够处理数以万计的并发连接,而无需为每个请求创建新的进程或线程。

2、稳定性:Nginx 的设计使其能够在高负载下保持稳定的性能,减少了崩溃和重启的需要。

3、丰富的功能集:除了基本的 HTTP 服务器功能外,Nginx 还支持 HTTPS、SSL/TLS、gzip 压缩、虚拟主机、URL 重写、负载均衡、缓存、HTTP/2 支持等。

4、配置简单:Nginx 的配置文件简洁明了,易于学习和使用。配置文件采用指令块的形式,支持丰富的变量和条件判断。

5、模块化设计:Nginx 的许多功能都是通过模块实现的,这些模块可以动态地加载和卸载,从而提供了高度的灵活性和可扩展性。

6、低内存消耗:Nginx 的内存占用非常低,这使得它能够在资源受限的环境中高效运行。

7、热部署:Nginx 支持在不中断服务的情况下升级和重新加载配置,这对于需要高可用性的生产环境尤为重要。

三、Nginx 的应用场景

  • 静态文件服务器:用于托管静态文件(如 HTML、CSS、JavaScript、图片等)。
  • 反向代理:作为后端服务器(如 Apache、Tomcat)的前端,接收客户端请求并转发给后端服务器,同时提供负载均衡和缓存功能。
  • 负载均衡器:将客户端请求分发到多个后端服务器上,以平衡负载并提高系统的整体性能。
  • HTTP 缓存:缓存静态内容以减少后端服务器的负载和响应时间。
  • 邮件代理服务器:作为 IMAP/POP3/SMTP 代理服务器,处理电子邮件的收发。

四、正向代理和反向代理

1、正向代理
如果用户直接访问谷歌服务器是访问不通的,如果想要访问到谷歌服务器需要加一台正向代理服务器,然后在客户端(浏览器)中配置代理服务器就行了。

在这里插入图片描述

2、反向代理
客户端对代理服务器是无感知的,因为客户端不用任何配置就可以访问,只用将请求发送到反向代理服务器上,由反向代理服务器去选择目标服务器,获取数据后,再返回给客户端用,此时,反向代理服务器和目标服务器对外就是一台服务器,暴露的是代理服务器的地址,隐藏了真实服务器的地址。

在这里插入图片描述

五、负载均衡

客户端将多个请求发送到服务器,服务器处理请求,有一些可能要与数据库交互服务器处理完成后,再将结果返回给客户端。如果所有的请求都在一台服务器上访问,效率会大大的降低,这个时候就用 负载均衡 将多个请求通过代理服务器转发给不同的服务器上。效率会提升。

在这里插入图片描述

六、动静分离

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

在这里插入图片描述

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

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

相关文章

硬件面试经典 100 题(31~50 题)

31、多级放大电路的级间耦合方式有哪几种?哪种耦合方式的电路零点偏移最严重?哪种耦合方式可以实现阻抗变换? 有三种耦合方式:直接耦合、阻容耦合、变压器耦合。直接耦合的电路零点漂移最严重,变压器耦合的电路可以实现…

嘉立创eda泪滴

泪滴https://prodocs.lceda.cn/cn/pcb/tools-teardrop/

【1】设计模式简介

一.什么是设计模式 每一个模式描述了一个在我们周围不断重复发生的问题以及该问题的解决方案的核心。这样,你就能一次又一次地使用该方案而不必做重复劳动。 二.深入理解面向对象 向下:深入理解三大面向对象机制 封装,隐藏内部实现继承&am…

Linux SystemV(共享内存(*)、消息队列、信号量)

个人主页:仍有未知等待探索-CSDN博客 专题分栏: Linux 目录 ​编辑 一、共享内存 1、原理 理解: 2、操作具体理解 1.概括 2.创建共享内存 共享内存的生命周期? key是什么? 进程怎么知道,共享内存是…

使用 FlexboxLayout 实现灵活布局

在 Android 开发中,有时我们需要让子视图根据内容和可用空间灵活排列。这时候,FlexboxLayout 是一个非常强大的工具,它类似于 CSS 中的 flexbox,允许我们轻松创建响应式布局。在这篇博客中,我们将详细介绍如何在 Andro…

原创度检测工具,快速检测文章原创值

原创度检测工具是帮助我们快速了解文章质量的工具,它能以最短的时间帮助我们了解到一篇文章的原创值是多少,并且还能帮助我们分析文章中哪些内容质量高,哪些内容质量低,从而对低质量的内容进行修改,达到提升整篇文章质…

Android App开发教学: 利用MediaPipe实现即时脸部侦测功能

前言 在Android开发中,实现即时脸部侦测功能是一个具有挑战性且引人注目的任务。幸运的是,Google的MediaPipe库为我们提供了一个简单且高效的解决方案。MediaPipe是一个开源的跨平台机器学习框架,可以用于各种视觉计算任务,包括脸…

C#泛型委托,约束

一、泛型委托 泛型的委托有很多&#xff0c;但掌握常见的泛型委托应用即可 委托可以定义它自己的类型参数。 引用泛型委托的代码可以指定类型参数以创建封闭式构造类型。 public delegate void Del<T>(T t);//Del<T> 是一个泛型委托 public static void Notify…

音频剪辑怎么剪?这4种裁剪方法快学起来

无论是音乐创作、播客录制还是专业的声音设计&#xff0c;高质量的音频剪辑都是创造引人入胜作品的关键。 然而&#xff0c;对于初学者或是专业人士而言&#xff0c;找到合适的音频剪辑工具&#xff0c;并掌握其使用方法&#xff0c;是通往成功道路上的第一步。 那么&#xf…

Python数据库操作必备:事务隔离级别全解析

更多资料获取 &#x1f4da; 个人网站&#xff1a;ipengtao.com 在数据库操作中&#xff0c;事务隔离是保证数据一致性和并发控制的重要机制。事务隔离级别决定了一个事务可以看到其他事务的哪些更改&#xff0c;常见的隔离级别包括未提交读&#xff08;Read Uncommitted&…

Java海康门禁设备 对接人脸下发API

海康门禁机设备API接口对接 引言&#xff1a; 我本人在对接海康门禁机设备的时候遇到了两个 问题1&#xff1a;人脸下发失败的问题&#xff0c;是根据官方的Demo&#xff0c;遇到的问题&#xff0c;可以参考一下 这个问题我排查了很久&#xff0c;最终发现是海康给的Demo里面…

EasyX自学笔记3(割草游戏2)

在上一篇笔记之中我们还留有许多bug&#xff0c;如派蒙不会转头、派蒙是鬼没影子、斜向速度过快、会跑出界外的问题在此一并处理。 在上一章里我们知道需要玩家类、敌人类、子弹类三种&#xff0c;但是其包含的是他们的运行逻辑和变量。而播放动画帧也有许多函数我们也将其封装…

学习Java的日子 Day68 jQuery操作节点,Bootstrap

jQuery 1.jQuery操作DOM DOM为文档提供了一种结构化表示方法&#xff0c;通过该方法可以改变文档的内容和展示形式 在访问页面时&#xff0c;需要与页面中的元素进行交互式的操作。在操作中&#xff0c;元素的访问是最频繁、最常用的&#xff0c;主要包括对元素属性attr、内容…

《Hadoop大数据技术与实践》+ 数仓版本

基础概念 随着数字化时代的到来&#xff0c;数据量的爆炸性增长使得传统的数据处理和分析方法变得不够高效&#xff0c;因此大数据技术应运而生。 数据分类 结构化数据&#xff1a;固定格式的SQL数据库等半结构化数据&#xff1a;json非结构化数据&#xff1a;图片、音视频 …

探索sqlmap的奥秘:Python中的强大SQL注入检测工具

文章目录 **探索sqlmap的奥秘&#xff1a;Python中的强大SQL注入检测工具**第一部分&#xff1a;背景介绍第二部分&#xff1a;sqlmap是什么&#xff1f;第三部分&#xff1a;如何安装sqlmap&#xff1f;第四部分&#xff1a;简单库函数使用方法第五部分&#xff1a;场景应用第…

Grafana+Influxdb(Prometheus)+Apache Jmeter搭建可视化性能测试监控平台

此性能测试监控平台&#xff0c;架构可以是&#xff1a; GrafanaInfluxdbJmeterGrafanaPrometheusJmeter Influxdb和Prometheus在这里都是时序性数据库 在测试环境中&#xff0c;压测数据对存储和持久化的要求不高&#xff0c;所以这里的组件可以都通过docker-compose.yml文件…

制氧机在造纸工业中的作用

在现代造纸工业中&#xff0c;制氧机扮演着至关重要的角色&#xff0c;为整个生产流程带来了诸多显著的优势和改进。 制氧机能够优化纸浆的漂白过程。传统的漂白方法可能效果不佳&#xff0c;且对环境造成较大压力。而通过制氧机制备的高纯度氧气参与漂白反应&#xff0c;能大大…

Langchain pandas agent - Azure OpenAI account

题意&#xff1a;Langchain pandas代理 - Azure OpenAI账户 问题背景&#xff1a; I am trying to use Langchain for structured data using these steps from the official document. 我正在尝试使用 Langchain 处理结构化数据&#xff0c;按照官方文档中的这些步骤进行操作…

软件测试第2章 黑盒测试和白盒测试对比

目录 一、黑盒测试 二、白盒测试 三、黑盒测试 VS 白盒测试 一、黑盒测试 1、它只检查程序功能是否能按照需求规格说明书的规定正常使用&#xff0c;程序是否能适当地接受输入数据而产生正确的输出信息。 2、黑盒测试也称功能测试&#xff0c;通过测试来检测每个功能是否能…