[Linux] Nginx 提供静态内容和优化积压队列

1.try_files指令可用于检查指定的文件或目录是否存在; NGINX会进行内部重定向,如果没有,则返回指定的状态代码。例如,要检查对应于请求URI的文件是否存在,请使用try_files指令和$ uri变量,如下所示:
server {
    root /www/data;
    location /images/ {
        try_files $uri /images/default.gif;
    }
}

2.对NGINX配置进行微小优化可以提高生产力并帮助实现最佳性能。启用sendfile默认情况下,NGINX会自行处理文件传输,并在发送之前将文件复制到缓冲区中。启用sendfile指令消除了将数据复制到缓冲区的步骤,并允许将数据从一个文件描述符直接复制到另一个文件描述符。或者,为了防止一个快速连接完全占用工作进程,可以使用sendfile_max_chunk指令限制单个sendfile()调用中传输的数据量(在本例中为1 MB):
location /mp3 {
    sendfile           on;
    sendfile_max_chunk 1m;
    #...
}

3.优化积压队列
其中一个重要因素是NGINX可以多快地处理传入连接。一般规则是在建立连接时,将其放入侦听套接字的“监听”队列中。在正常负载下,队列很小或根本没有队列。但是在高负载下,队列会急剧增长,导致性能不均匀,连接断开,延迟增加。显示侦听队列要显示当前侦听队列,请运行以下命令:
sudo sysctl -w net.core.somaxconn=4096

server {
    listen 80 backlog=4096;
    # ...
}

ss -l

原文地址:https://www.cnblogs.com/taoshihan/p/10111673.html

时间: 2024-08-28 23:22:40

[Linux] Nginx 提供静态内容和优化积压队列的相关文章

nginx 提供静态内容

This section describes how to serve static content, how to use different ways of setting up the paths to look for files, and how to set up index files. 这一章讨如何提供静态文件,如何使用不同方式设置查找文件的路径,如果设置索引文件. Root Directory and Index Files根目录和索引文件 The rootdirective

nginx学习之提供静态内容(五)

1.根目录和索引文件 server { root /www/data; location / { } location /images/ { } location ~ \.(mp3|mp4) { root /www/media; } } root指令能放置的位置是:http,server,location. 上面的意思是:我所有的location定义都是基于根目录/www/data的,也就是说"/"指的就是/www/data/,而"/images/"指的就是/www

Nginx作为静态内容服务器(Windows环境)

1.简单安装 1)下载 http://nginx.org/en/download.html 2)解压后的路径 E:\Study\nginx\nginx-1.7.6 3)执行nginx.exe,访问http://localhost ,出现Welcome to nginx!欢迎内容,安装成功. 4)在安装路径的logs目录下,会自动生成一个nginx.pid文件,文件内容就是nginx的主进程pid. 2.简单使用命令 nginx -s stop 快速停止 nginx -s quit 安全退出(会处

nginx学习(七):nginx提供静态资源服务

准备工作 这里准备了一个文件夹,里面放入了一个img文件夹和index.html文件,将文件上传到home下. 配置nginx 这里我们从新起个端口 server { listen 90; server_name localhost; location / { root /home/static_kevin; index index.html; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; }

Django提供静态文件服务

Django为了方便开发调试,debug模式下runserver会利用django.contrib.staticfiles应用自动部署资源服务,但是生产模式下(或Debug=True时),如果还想要Django提供资源服务,就必须明确提供资源相关的配置,使其承担资源服务.以下是两种使用Django提供资源服务的配置方式,推荐使用这一种,发布生产环境后,可以使用nginx提供静态资源服务,Django只做动态内容服务. 第一种形式:1.项目设置中配置(settings.py) STATIC_ROO

Linux nginx

Nginx反向代理:      1) nginx提供静态资源服务 nginx的一大经典使用场景就是提供静态资源服务,假设/var/www/html是静态资源所在的文件夹,那么可以通过修改配置文件来通过nginx处理这些静态资源. 在 /etc/nginx/conf.d/default.conf中增加代码 Test.php <img src='asset/1.png'> location /asset { root /var/www/html;        可以把路径写在其他服务器上 inde

linux使用Nginx搭建静态资源服务器

最近公司需要做一个宣传片播放  视频有点大 好几百M 就想到使用Nginx来代理静态资源,在过程中出现了一些问题,比如端口没开.访问是403等,没有成功,后面慢慢查找问题,才发现大部分博客资料的都不全,所以在这里记录一下. 安装过程本文就不提了 网上都有很多 本文主要说明 nginx.conf 的配置 如下: 进入编辑nginx.conf 文件 输入密码 配置nginx.conf 上传文件到配置的路径 在网页地址栏输入对应的地址 如果出现 nginx静态资源文件无法访问,403 forbidde

linux服务器的性能分析与优化(十三)

[教程主题]:1.linux服务器的性能分析与优化 [主要内容] [1]影响Linux服务器性能的因素 操作系统级 Ø CPU 目前大部分CPU在同一时间只能运行一个线程,超线程的处理器可以在同一时间处理多个线程,因此可以利用超线程特性提高系统性能. 在linux系统下只有运行SMP内核才能支持超线程,但是安装的CPu数量越多,从超线程获得的性能提升越少. 另外linux内核会将多核的处理器当做多个单独的CPU来识别,例如,两个4核的CPU会被当成8个单个CPU,从性能角度讲,两个4核的CPU整

linux+nginx+mysql+php

LNMP(linux+nginx+mysql+php)服务器环境配置 一.简介 Nginx是俄罗斯人编写的十分轻量级的HTTP服务器,Nginx,它的发音为 “engine X”, 是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器.Nginx是由俄罗斯人 Igor Sysoev为俄罗斯访问量第二的 Rambler.ru站点开发的,它已经在该站点运行超过三年了.Igor Sysoev在建立的项目时,使用基于BSD许可. 在高并发连接的情况下,Nginx是