news 2026/4/18 10:58:19

Nginx理论学习

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Nginx理论学习

文章目录

    • 一、nginx相关内容
      • nginx是什么?可以实现什么功能?
      • 为什么要使用nginx?和它功能相似的APP有哪些?
      • nginx应用场景
      • nginx的架构原理
      • nginx的基本操作
        • nginx安装
        • nginx相关命令
        • Nginx相关的配置文件
        • Nginx访问方式

一、nginx相关内容

nginx是什么?可以实现什么功能?

nginx是一个http和反向代理的服务器 http服务器就是web服务器,web服务器使用nginx还是有一定缺陷的 因为nginx的轻量级导致它缺少很多的模块,没有办法满足现在的互联网 所以在现在我们一般使用的是基于nginx二层开发的web服务,例如tengine、openrusty; nginx现在最重要的是代理,nginx的代理有反向代理和正向代理 反向代理:四层代理【4层代理:使用NAT(Network Address Translation)技术,即网络地址转换】 七层代理【nginx读取并解析Http请求内容】

为什么要使用nginx?和它功能相似的APP有哪些?

#和nginx相似的有Apache IIS【微软的,IIS就相当于把你的机器变成一个服务器用来浏览网页】 Tomcat:运行JAVA的网络服务器 Lighttpd:开源Web服务器软件 openrusty:是一个基于 Nginx 与 Lua 的高性能 Web 平台#为什么我们需要使用nginx1、轻量并且高扩展 【轻量是因为它安装很快包小,高扩展是因为nginx是易读的方便开发人员二次开发使用】2、高性能和高并发 【高性能是指服务响应时间快,(CPU/处理器/内存)特别是在高并发下响应时间不会急剧增加】 【高并发是指短时间内遇到大量操作请求】3、高可靠 【高可靠性来自于其核心框架代码的优秀设计、模块设计的简单性;另外,官方提供的常用模块都非常稳定】3、占有内存少,并发能力强
#负载均衡有4中1、F5:硬件负载均衡;因为是硬件所以各方面表现是非常好的2、LVS:只支持四层的负载均衡,就是NAT技术,需要用在硬件环境中,和云环境是不兼容的,所以现在基本很少使用了,它的重点在于四种工作模式:dr:直接路由模式;tun:隧道模式;nat:路由转发模式;fullnat模式3、nginx:生态最好的,支持四层和七层,早期的时候默认只支持四层4、HAproxy:高可用代理,七层代理上比nginx具有更灵活的策略

nginx应用场景

nginx的架构原理

多进程模型

进程是操作系统资源分配到最小的单位,因为CPU数量是有限的,多个进程通过分配的时间获取CPU的使用权限

nginx采用master-worker的工作机制

master负责工作进程的配置加载、启停等相关的操作

worker负责处理具体的请求

worker之间是独立的,每一个工作进程处理多个连接

每一个连接有一个工作进程全权处理,不进行进程的切换,这样就不会产生进程切换导致的资源消耗问题

共享内存允许多个进程访问同一个内存地址,一个进程改变了内容之后,其他的进程可以使用改变了之后的内容

worker工作原理

模块化

1、核心模块 cron 提供的是nginx服务的基本功能,例如nginx的进程管理、CPU亲缘性、内存管理、配置文件和日志功能

2、事件模块: 负责进行连接处理

3、Http模块:提供Http处理的核心功能和部分功能模块

4、mail模块 提供邮件代理

5、Stream模块 提供TCP/UDP会话代理和负载的功能

6、upstream模块 提供七层代理和负载均衡的功能

nginx的基本操作

nginx安装

可以使用三种方式进行安装

1、源码安装

2、官方源安装 版本较新

3、epel源安装 版本比较低

#安装之前都是需要进行安装运行环境的yuminstall-y gcc gcc-c++ autoconf pcre pcre-devel zlib-devel openssl-develmake automakewgethttpd-toolsvimtree#使用官方源安装的,必须要有官方源配置# vim /etc/yum.repos.d/nginx.repo[nginx-stable]name=nginx stable repobaseurl=http://nginx.org/packages/centos/$releasever/$basearch/gpgcheck=1enabled=1gpgkey=https://nginx.org/keys/nginx_signing.keymodule_hotfixes=true
nginx相关命令
启动服务 nginx有两套管理方案1)自带的 启动nginx nginx 关闭nginx nginx -s stop 重载 nginx -s reload 测试语法 nginx -t 查看版本 nginx -v 查看携带模块及功能(源码安装的配置参数) nginx -V#systemd托管(建议)systemctl start|stop|restart|reload|status nginx 不能重叠使用#查看端口占用ss -lntp|grep:80netstat-lntp|grep:80 -l listen 侦听 -n 以数字方式显示,不做反向解析,提供查询效率 -t tcp -p 进程lsof-i:80#查看服务状态systemctl status nginx#查看进程状态psaux|grep[n]ginx
Nginx相关的配置文件
#配置文件路径:主配置文件 /etc/nginx/nginx.conf 整个配置文件是以区块的形式组织的。一般,每个区块以一对大括号{}来表示开始与结束 子配置文件(配置站点)/etc/nginx/conf.d/*.conf 配置文件 Nginx的站点配置文件/etc/nginx /etc/nginx/nginx.conf /etc/nginx/conf.d /etc/nginx/conf.d/default.conf 配置文件 Scgi、Fastcgi、Uwcgi配置文件 /etc/nginx/fastcgi_params /etc/nginx/scgi_params /etc/nginx/uwsgi_params 配置文件 Nginx编码转换映射文件 /etc/nginx/win-utf /etc/nginx/koi-utf /etc/nginx/koi-win /etc/nginx/mime.types 配置文件 http协议的Content-Type与扩展名 /usr/lib/systemd/system/nginx.service 配置文件 配置系统守护进程管理器 /etc/logrotate.d/nginx 配置文件 Nginx日志轮询,日志切割 Nginx终端管理命令 /usr/sbin/nginx /usr/sbin/nginx-debug 命令 目录 Nginx模块目录 /etc/nginx/modules /usr/lib64/nginx /usr/lib64/nginx/modules 目录 Nginx默认站点目录 /usr/share/nginx /usr/share/nginx/html /usr/share/nginx/html/50x.html /usr/share/nginx/html/index.html Nginx的帮助手册 /usr/share/doc/nginx-1.12.2 /usr/share/man/man8/nginx.8.gz /var/cache/nginx 目录 Nginx的缓存目录 /var/log/nginx 目录 Nginx的日志目录
Nginx访问方式

1.通过服务器的IP直接访问(不推荐)

2.通过假域名方式访问(推荐方式)

Windows修改 C:\Windows\System32\drivers\etc\hosts

10.0.0.7 game.tf.com

3.使用ping命令测试域名解析是否正常

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 6:33:34

从零基础到不再抗拒:我这段时间反复做 PPT 的真实经验记录

在很长一段时间里,我对 PPT 一直是回避态度。并不是完全不会用,而是那种“能做,但做得很吃力”的状态。每次接到需要做 PPT 的任务,心里都会下意识拖延,直到实在躲不开,才硬着头皮开始。最近一段时间&#…

作者头像 李华
网站建设 2026/4/18 6:36:53

DownKyi深度解析:B站视频下载与处理的专业解决方案

DownKyi深度解析:B站视频下载与处理的专业解决方案 【免费下载链接】downkyi 哔哩下载姬downkyi,哔哩哔哩网站视频下载工具,支持批量下载,支持8K、HDR、杜比视界,提供工具箱(音视频提取、去水印等&#xff…

作者头像 李华
网站建设 2026/4/18 6:37:25

嵌入式技术:驱动未来的隐形力量

嵌入式技术:赋能千行百业的“隐形引擎” 导言: 简述嵌入式系统的定义:深度集成在设备或系统中的专用计算机系统。点明核心价值:嵌入式技术是智能化、自动化、互联化的基石。引出主题:本文将探讨嵌入式技术如何作为“赋…

作者头像 李华
网站建设 2026/4/18 7:57:31

原神帧率解锁终极指南:告别60帧束缚的完整教程

还在为《原神》的60帧限制而烦恼吗?每次在大世界中奔跑,或是挑战深渊螺旋时,是否都渴望获得更流畅的游戏体验?genshin-fps-unlock正是为你量身打造的解决方案,这款专为《原神》设计的帧率解锁工具,能够直接…

作者头像 李华
网站建设 2026/4/18 11:56:32

COMSOL燃料电池仿真技术与应用

COMSOL Multiphysics具有强大的多物理场全耦合仿真分析功能、高效的计算性能,可以保证数值仿真的高度精确,已被广泛应用于各个学科领域,近年来运用COMSOL来解决电化学实际工程问题也越来越普遍。 电化学仿真技术通过对电池微观行为进行研究&…

作者头像 李华