Nginx - 相关概念解释及整体结构

概述

  1. 定义
    1. 一个高性能的 HTTP 和反向代理服务器
    2. 一个 IMAP/POP3/SMTP 代理服务器
  2. 目标:高效处理高并发连接
  3. 安装流程:Installing nginx

功能

功能说明
⭐ 反向代理作为反向代理服务器,将客户端请求转发到一个或多个后端服务器
负载均衡通过多种负载均衡算法(如轮询、最少连接等)分发请求
HTTP 缓存缓存后端服务器的响应,提高响应速度并减轻后端服务器的压力
静态内容服务高效地提供静态文件(如 HTML、CSS、JavaScript、图片等)的服务
SSL/TLS 加密支持 SSL/TLS,加密客户端和服务器之间的通信,提高安全性
邮件代理服务作为邮件代理(IMAP、POP3、SMTP)服务器
URL 重写和重定向提供灵活的 URL 重写和重定向功能,用于优化 URL 结构和管理请求路由
FastCGI、uWSGI、gRPC 支持支持与 FastCGI、uWSGI 和 gRPC 服务通信,常用于与 PHP、Python 和其他动态内容生成的应用服务器集成
流控 & 限流
访问控制和认证

常用命令

命令功能说明
nginx -s quit正常停止优雅退出
nginx -s stop立即停止强制退出
nginx -s reload重新加载配置文件热重载配置
nginx -s reopen重新打开日志文件日志切割
nginx -t检查配置文件验证配置有效性
nginx -p /path/to/virtual_host_file启动特定虚拟主机指定虚拟主机配置

结构

  1. 组成:一个主进程 + 多个工作进程

一、主进程(Master Process)

  1. 功能
    1. 读取和评估配置文件
    2. 管理和维护工作进程(Worker Processes)
    3. 接受并响应操作系统的信号(如重启、重新加载配置等)

二、工作进程(Worker Processes)

  1. 功能:实际处理客户端请求
  2. 数量:在配置文件中定义,可以针对给定的配置进行固定,也可以根据可用的 CPU 内核数量自动调整
  3. 进程独立:每个工作进程是独立的,相互之间没有共享状态,这样可以最大限度地提高稳定性和并发处理能力

三、事件驱动模型

  1. 定义:异步、非阻塞的事件驱动架构,依赖于操作系统提供的高效事件通知机制(如 epoll、kqueue 等)
  2. 功能:允许 Nginx 在处理高并发连接时保持高效

特点

  1. 高可靠性:独立的工作进程设计,某个工作进程出问题不会影响整个服务器的运行
  2. 资源消耗低:内存和 CPU 使用率低(10000 个非活跃的 HTTP Keep-Alive 连接在 Nginx 中仅消耗 2.5MB 的内存)
  3. 处理响应请求快 :基于事件驱动的架构,Nginx 可以比其它的 Web 服务器更快的响应请求
  4. 支持高并发连接 :基于事件驱动的架构,能够并发处理百万级别的 TCP 连接
  5. 高扩展性:高度模块化的设计和自由的许可证使得用于扩展 Nginx 功能的第三方模块十分庞大
  6. 热部署:master 管理进程与 worker 工作进程的分离设计,保证 Nginx 可以在不间断服务的前提下,升级 Nginx 的可执行文件
  7. 自由的 BSD 许可协议:允许用户免费使用 Nginx,也允许用户修改 Nginx 源码,还允许用户用于商业用途
  8. 跨平台:Linux ↔ Windows

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值