【web】Nginx简介、配置优化

简介: 文章目录前言一、性能优势/运行原理/应用场景2.1 优势

一、性能优势/运行原理/应用场景

2.1 优势

  • 量级轻、配置简单
  • 成本低廉且开源
  • 内存消耗低、10个Nginx约消耗150M
  • 稳定性搞、宕机概率小
  • 非阻塞、能处理高并发,约2-3w
  • 有自我检查功能、可停用宕机服务器

2.2 原理

  • 读取Nginx主配置文件:nginx.conf
  • 调用fork函数创建子进程
  • 子进程竞争accept链接
  • 根据时间处理函数进行数据交换
  • 主动/被动关闭链接

2.3 应用

  • http静态页面处理服务器
  • 虚拟主机:可基于端口、域名、IP三种形式创建虚拟主机
  • 反向代理:通过反向代理做到负载均衡的效果
  • 安全管理

三、LNMP部署教程

轻松便捷,自动化部署LNMP!


四、LNMP优化

4.1 配置优化

4.1.1 版本号隐藏

http{
server_tokens off;  
#http配置中添加tokens模块,可选择关闭版本号显示,也可选择修改显示的版本
}

4.1.2 增加并发量/绑核

cat /proc/cpuinfo | grep -c "physical id"
#查看cpu核数
ps aux | grep nginx
#查看nginx主进程中有几个子进程
worker_processes  2;
#修改nginx.conf中分配给nginx的cpu线程数,一般与cpu线程总数相同或者2倍
worker_cpu_affinity 01 10;
#绑核,防止产生cpu惊醒现象,此时为2核的配置,若是4核则绑核的配置为 0001 0010 0100 1000;
worker_connections  1024;
#设置每个线程数所能处理的最大连接数
修改系统最大打开文件数的限制(Linux内核)

4.1.3 添加缓存

server{
  location ~ \.(gif|jpg|png) {
    expires 1d;
    #调用expires模块,将匹配的内容缓存1天
  }
}

4.1.4 设置防盗链(rewrite)

location/rewrite规则详解


4.1.5 日志分割(脚本)

nginx日志分割升级版!无需考虑脚本存放路径!

相关文章
|
26天前
|
应用服务中间件 BI nginx
Nginx的location配置详解
【10月更文挑战第16天】Nginx的location配置详解
|
1月前
|
Java API 数据库
构建RESTful API已经成为现代Web开发的标准做法之一。Spring Boot框架因其简洁的配置、快速的启动特性及丰富的功能集而备受开发者青睐。
【10月更文挑战第11天】本文介绍如何使用Spring Boot构建在线图书管理系统的RESTful API。通过创建Spring Boot项目,定义`Book`实体类、`BookRepository`接口和`BookService`服务类,最后实现`BookController`控制器来处理HTTP请求,展示了从基础环境搭建到API测试的完整过程。
42 4
|
1月前
|
缓存 负载均衡 安全
Nginx常用基本配置总结:从入门到实战的全方位指南
Nginx常用基本配置总结:从入门到实战的全方位指南
256 0
|
1月前
|
应用服务中间件 Linux nginx
Jetson 环境安装(四):jetson nano配置ffmpeg和nginx(亲测)之编译错误汇总
这篇文章是关于在Jetson Nano上配置FFmpeg和Nginx时遇到的编译错误及其解决方案的汇总。
87 4
|
6天前
|
存储 负载均衡 中间件
Nginx反向代理配置详解,图文全面总结,建议收藏
Nginx 是大型架构必备中间件,也是大厂喜欢考察的内容,必知必会。本篇全面详解 Nginx 反向代理及配置,建议收藏。
Nginx反向代理配置详解,图文全面总结,建议收藏
|
19天前
|
应用服务中间件 API nginx
nginx配置反向代理404问题
【10月更文挑战第18天】本文介绍了使用Nginx进行反向代理的配置方法,解决了404错误、跨域问题和302重定向问题。关键配置包括代理路径、请求头设置、跨域头添加以及端口转发设置。通过调整`proxy_set_header`和添加必要的HTTP头,实现了稳定的服务代理和跨域访问。
nginx配置反向代理404问题
|
16天前
|
JavaScript 前端开发 开发工具
web项目规范配置(husky、eslint、lint-staged、commit)
通过上述配置,可以确保在Web项目开发过程中自动进行代码质量检查和规范化提交。Husky、ESLint、lint-staged和Commitlint共同作用,使得每次提交代码之前都会自动检查代码风格和语法问题,防止不符合规范的代码进入代码库。这不仅提高了代码质量,还保证了团队协作中的一致性。希望这些配置指南能帮助你建立高效的开发流程。
32 5
|
23天前
|
缓存 负载均衡 应用服务中间件
Nginx配置
【10月更文挑战第22天】在实际配置 Nginx 时,需要根据具体的需求和环境进行调整和优化。同时,还需要注意配置文件的语法正确性和安全性。
39 7
|
28天前
|
机器学习/深度学习 缓存 监控
利用机器学习优化Web性能和用户体验
【10月更文挑战第16天】本文探讨了如何利用机器学习技术优化Web性能和用户体验。通过分析用户行为和性能数据,机器学习可以实现动态资源优化、预测性缓存、性能瓶颈检测和自适应用户体验。文章还介绍了实施步骤和实战技巧,帮助开发者更有效地提升Web应用的速度和用户满意度。
|
1月前
|
前端开发 JavaScript 应用服务中间件
终极 Nginx 配置指南
本文介绍了Nginx的基本配置及其优化方法。首先,通过删除注释简化了Nginx的默认配置文件,使其更易于理解。接着,文章将Nginx配置文件分为全局块、events块和http块三部分进行详细解释。此外,还提供了如何快速上线网站、解决前端history模式404问题、配置反向代理、开启gzip压缩、设置维护页面、在同一IP上部署多个网站以及实现动静分离的具体配置示例。最后,附上了Nginx的基础命令,包括安装、启动、重启和关闭等操作。