nginx配置文件详解(三)
nginx配置文件详细解析
nginx安装目录: /usr/local/nginx
配置文件: /usr/local/nginx/conf 目录下的 nginx.conf文件
nginx优化方法
1、work_process : cpu亲和性
2、选择epoll模型
3、work_connects连接数
4、每个进程打开文件最大数
5、keepalive timeout; 会话保持时间
6、gzip压缩级别
7、proxy 超时时间配置
8、expires 3d;浏览器缓存过期时间,30天
9、nginx动静分离
一个nginx可配置几十个域名,几十个虚拟主机
user www www #定义nginx的用户和用户组
worker_processes 4; #默认启动4个工作进程(企业一般8-16个)
可以改成 worker_processes.auto; #自动根据请求去启动进程
worker_cpu_affinity 00000001 00000010 000001 00 00001000 #CPU的亲和性,配置几个就要有几个逻辑CPU
pid /usr/local/nginx/nginx.pid #指定进程id的位置
worker_rlimit_nofile 102400; #指定进程打开的最多的文件描述符数目,这个最好是配置与 ulimit -n 的值相等
#event模块,定义使用哪个模块; nginx2.6以上,可以使用epoll模块
events{
use epoll;
worker_connections 102400; #单个后台进程的最多并发连接数
multi_accept on; #尽可能多的接收请求(优化的一部分)
}
epoll模型:异步非阻塞模型,句柄事件的选择不需要遍历,是事件响应的。效率高--nginx
select模型 : 遍历所有的句柄,效率低 --apache
sendfile on; #指定nginx是否调用函数,普通应用必须为on
tcp_nopush on; #防止网络阻塞
keepalive_timeout 60; #保持超时时间,单位是秒。连接继续保持的时间,连接不断开。 再次浏览时可以直接请求,不需要重新建立连接。
tcp_nodelay on; #提高数据的实时响应性。
#开启gzip压缩,性能提升好几倍
gzip on;
gzip_min_length 1k; #小与1k就不压缩
gzip_buffers 416k;
gzip_http_version1.1;
gzip_comp_level 4; #这是指压缩级别。最大为9。配置为4,访问原来网址为180k时,压缩后可能是40-50k。这提高性能,然后这里一般配置为 4或者6.
缓冲区
client_max_body_size 10M; #允许客户端请求的最大单文件字节数为10兆
client_body_buffer_size 128k; #缓冲区代理缓冲用户端请求的最大字节数
proxy
proxy_connect_timeout 90; #nginx与后端服务器的连接时间 示例:一个nginx对应后端的多个tomcat,读取超过90秒就是超时
proxy_send_timeout 90; #后端服务器数据回传时间,在规定时间内,后端服务器必须回传所有数据。
proxy_read_timeout 90; #连接成功后,后端服务器的响应时间(处理请求的时间)
这个值一般设置为120秒。超时了nginx会报502错误。
****nginx动静分离
将动态请求与静态请求分开
一种是将 纯粹的把静态文件做成独立的域名,放在独立的服务器上,目前的主流方案。
另一种是 将动态文件和静态文件混合发布,根据不同的后缀名请求不同的文件。
#定义模块:(这里配置服务器,**负载均衡**)
upstream jvm_web1{
server 127.0.0.1:8080 weight=1max_fails=2 fail_timeout=30s;
server 127.0.0.1:8081 weight=1max_fails=2 fail_timeout=30s;
}
location / {
proxy_pass http://jvm_web1; #将请求转发给后台请求,使用jvm_web1模块
}
location~ 。。。#这里做匹配静态文件的数据,然后下面配置对应的server接收静态文件请求
nginx配置文件详解(三)的更多相关文章
- nginx之旅(第一篇):nginx下载安装、nginx启动与关闭、nginx配置文件详解、nginx默认网站
一.nginx下载安装 版本nginx 1.15.5 系统环境centos7.5(本机ip192.168.199.228) 关闭selinux 和防火墙firewall 1.下载 wget http: ...
- 一、Nginx配置文件详解
配置文件介绍 主要有两部分:分别是 main:主体部分 http{}:虚拟主机配置部分 配置指令主要以分号结尾:配置语法:directive value1 [value2 ....] 支持使用的变量 ...
- Nginx系列(10)- Nginx配置文件详解
nginx文件结构 ... #全局块 events { #events块 ... } http #http块 { ... #http全局块 server #server块 { ... #server全 ...
- Nginx配置文件详解
Nginx是一款面向性能设计的HTTP服务器,相较于Apache.lighttpd具有占有内存少,稳定性高等优势. ######Nginx配置文件nginx.conf中文详解##### #定义Ngin ...
- Nginx教程(五) Nginx配置文件详解
一. Nginx配置文件nginx.conf中文详解 #定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为等于CPU总核心数. worker_processe ...
- Nginx教程(五) Nginx配置文件详解 (转)
一. Nginx配置文件nginx.conf中文详解 #定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为等于CPU总核心数. worker_processe ...
- Nginx:Nginx配置文件详解
Nginx是一款面向性能设计的HTTP服务器,相较于Apache.lighttpd具有占有内存少,稳定性高等优势. 如下是Nginx的配置详解: ######Nginx配置文件nginx.conf中文 ...
- Nginx配置文件详解与优化建议
1.概述 今天来详解一下Nginx的配置文件,以及给出一些配置建议,希望能对大家有所帮助. 2.nginx.conf 1)配置文件位置 nginx 安装目录的 conf 文件夹下,例如:/usr/lo ...
- nginx实现动静分离--附nginx配置文件详解
转自http://www.cnblogs.com/1214804270hacker/p/9299462.html 一.认识访问静态资源与访问动态资源的区别 静态资源:指存储在硬盘内的数据,固定的数据, ...
随机推荐
- 修改Anaconda中的Jupyter Notebook默认工作路径
这二天,安装了anaconda想更改jupyter的工作路径,在网上找了一下 方式1. 打开Windows的cmd,在cmd中输入jupyter notebook --generate-config如 ...
- RabbitMQ消息发布时的权衡
在进行本篇文章的学习之前,你需要先阅读 https://www.cnblogs.com/duanjt/p/10057330.html.以便对Java访问RabbitMQ的基础用法有所了解. 一.失败通 ...
- Google云平台使用方法 | Hail | GWAS | 分布式回归 | LASSO
参考: Hail Hail - Tutorial windows也可以安装:Spark在Windows下的环境搭建 spark-2.2.0-bin-hadoop2.7 - Hail依赖的平台,并行处 ...
- 20180429 xlVBA套打单据自适应列宽
Sub TestAutoAdjustColumnWidthBaseOnModel() Set ModelSheet = ThisWorkbook.Worksheets("单据模板" ...
- p1217 Prime Palindromes
1.回文质数的数量很少 2.除了11以外的回文质数都是偶数. 3.1-1亿内的回文数不到30000个. 4.1-10000的质数约1000个. 这样深搜找出所有的回文数,再判断是否质数. #inclu ...
- android--------Socket的简单了解
Socket目录 Socket通信简介 Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信.两者的最大差异在于,http连接使用的是“请求—响应方式”,即在请求时建立连 ...
- Spring Batch 体系结构
Spring Batch 设计的时候充分考虑了可扩展性和各类终端用户. 下图显示了 Spring Batch 的架构层次示意图,这种架构层次为终端用户开发者提供了很好的扩展性与易用性. 上图显示的是 ...
- VitrualBox、vagrant、homestead的关系
VitrualBox 是一款非常强大的免费虚拟机软件,使用者可以在 VitrualBox 上安装并运行 Linux.Windows.Mac OS X 等操作系统,类似的软件还有 VMware Vagr ...
- 第二阶段——个人工作总结DAY03
1.昨天做了什么:昨天实现了一个活动跳转到另一个活动. 2.今天做了什么:今天打算将所有的都实现,并且只用一个监听事件封装. 3.遇到的困难:无.
- 6月17 练习ThinkPHP的增删改查
利用ThinkPHP连接数据库的增删改查的例题:用到的数据库表名Info表,Nation表 数据显示页面:MainController.class.php中的ShowInfo方法 //例题 //显示所 ...