Nginx配置文件的整体结构

一、Nginx配置文件的整体结构

从图中可以看出主要包含以下几大部分内容:

1. 全局块

该部分配置主要影响Nginx全局,通常包括下面几个部分

  • 配置运行Nginx服务器用户(组)

  • worker process数

  • Nginx进程PID存放路径

  • 错误日志的存放路径

  • 配置文件的引入

2. events块

该部分配置主要影响Nginx服务器与用户的网络连接,主要包括:

  • 设置网络连接的序列化

  • 是否允许同时接收多个网络连接

  • 事件驱动模型的选择

  • 最大连接数的配置

3. http块
  • 定义MIMI-Type

  • 自定义服务日志

  • 允许sendfile方式传输文件

  • 连接超时时间

  • 单连接请求数上限

4. server块
  • 配置网络监听

  • 基于名称的虚拟主机配置

  • 基于IP的虚拟主机配置

5. location块
  • location配置

  • 请求根目录配置

  • 更改location的URI

  • 网站默认首页配置

二、upstream 模块

upstream 这个模块是写一组被代理的服务器地址 (即定义的后端服务器列表中选取一台服务器接受用户的请求 ),然后配置负载均衡的算法

以下是一个简单的Nginx配置示例,展示了upstream模块的基本用法:

复制代码
upstream web_test { 
      server 10.10.2.100:80;
      server 10.10.3.100:80;
}
server {
      ....
      location / {         
             proxy_pass  http://web_test;     --请求转向 web_test 定义的服务器列表         
      }

在Nginx中,upstream模块用于定义一组后端服务器,这些服务器共同处理客户端请求。通过upstream模块,可以配置负载均衡、高可用性和反向代理等功能。在upstream块中,可以指定多个服务器并定义它们的一些属性,如权重、最大连接数等。

在这个示例中,定义了一个名为web_test的upstream块,里面包含了两个后端服务器的地址和端口号。Nginx可以针对这些服务器执行负载均衡策略,比如轮询、IP哈希、最小连接数等,以实现请求的分发。

通过upstream模块,Nginx能够实现高效的负载均衡和故障转移,提高了系统的可靠性和性能

相关推荐
用户805533698034 小时前
Input 子系统架构:Core、Handler、Driver 三层是怎么协作的
linux·嵌入式
用户805533698034 小时前
RK-Forge外设系列开篇 - 把板子从「能启动」变成「能用」:Ethernet/SPI/MMC 三个纯接线外设
linux·github·嵌入式
小猿姐11 小时前
唯品会大规模数据库云原生实践:基于 KubeBlocks 管理数千实例的统一运维之路
运维·elasticsearch·云原生
七歌杜金房16 小时前
我终于又有了自己的 Linux 电脑
linux·debian·mac
SkyWalking中文站1 天前
认识 Horizon UI · 5/17:3D 基础设施地图
运维·监控·自动化运维
tntxia2 天前
linux curl命令详解_curl详解
linux
扛枪的书生2 天前
Linux 网络管理器用法速查
linux
SkyWalking中文站2 天前
认识 Horizon UI · 1/17:SkyWalking 新一代可观测性控制台
运维·前端·监控
顺风尿一寸2 天前
Java Socket 内核之旅:从 SocketChannel.read() 到 tcp_recvmsg 与 epoll 的完整调用链路
linux
雪梨酱QAQ2 天前
Kubeneters HA Cluster部署
运维