`
Tzhennan
  • 浏览: 58198 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

nginx 优化

 
阅读更多

顶层的配置

user www-data;

pid /var/run/nginx.pid; 

worker_processes auto; 

worker_rlimit_nofile 100000;

user 和 pid 默认设置

worker_processes 定义了 nginx 对外提供 web 服务时的 worder 进程数。不能确定的时候,将其设置为可用的 CPU 内核数将是一个好 的开始(设置为“auto”将尝试自动检测它)

worker_rlimit_nofile 更改 worker 进程的最大打开文件数限制。设置后操作系统和 Nginx 可以处理比“ulimit -a”更多的文件,把这个值设高,这样 nginx 就不会有 “too many open files”问题了

 

Events 模块

events 模块中包含 nginx 中所有处理连接的设置。

events {

    worker_connections 2048;

    multi_accept on;

    use epoll;

}

worker_connections 设置可由一个 worker 进程同时打开的最大连接数

multi_accept 告诉 nginx 收到一个新连接通知后接受尽可能多的连接

use 设置用于复用客户端线程的轮询方法。如果你使用 Linux 2.6+,你应该使用 epoll

 

HTTP 模块

http {

    server_tokens off;

    sendfile on;

    tcp_nopush on;

    tcp_nodelay on;

    ...

}

server_tokens 并不会让 nginx 执行的速度更快,但它可以关闭在错误页面中的 nginx 版本数字,这样对于安全性是有好处的

tcp_nopush 告诉 nginx 在一个数据包里发送所有头文件,而不一个接一个的发送

tcp_nodelay 告诉 nginx 不要缓存数据,而是一段一段的发送–当需要及时发送数据时,就应该给应用设置这个属性,这样发送一小块数据信息时就不能立即得到返回值

 

reset_timeout_connection on;

告诉 nginx 关闭不响应的客户端连接。这将会释放那个客户端所占有的内存空间

send_timeout 10;

指定客户端的响应超时时间。这个设置不会用于整个转发器,而是在两次客户端读取操作之间。如果在这段时间内,客户端没有读取任何数据,nginx 就会关闭连接

limit_conn addr 100;

limit_conn 为给定的 key 设置最大连接数。这里 key 是 addr,我们设置的值是 100,也就是说我们允许每一个 IP 地址最多同时打开有 100 个连接。

 

 

gzip on;

gzip_disable "msie6";

# gzip_static on;

gzip_proxied any;

gzip_min_length 1000;

gzip_comp_level 4;

gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

gzip 是告诉 nginx 采用 gzip 压缩的形式发送数据。这将会减少我们发送的数据量

gzip_disable 为指定的客户端禁用 gzip 功能

gzip_static 告诉 nginx 在压缩资源之前,先查找是否有预先 gzip 处理过的资源

gzip_min_length 设置对数据启用压缩的最少字节数。如果一个请求小于 1000 字节,我们最好不要压缩它,因为 压缩这些小的数据会降低处理此请求的所有进程的速度

gzip_comp_level 设置数据的压缩等级。这个等级可以是 1-9 之间的任意数值,9 是最慢但是压缩比最大的。我们 设置为 4,这是一个比较折中的设置

 

 

# cache informations about file descriptors, frequently accessed files # can boost performance, but you need to test those values 

open_file_cache max=100000 inactive=20s;

open_file_cache_valid 30s;

open_file_cache_min_uses 2; 

open_file_cache_errors on;

open_file_cache 打开缓存的同时也指定了缓存最大数目,以及缓存的时间。我们可以设置一个相对高的最大时 间,这样我们可以在它们不活动超过 20 秒后清除掉

open_file_cache_valid 在 open_file_cache 中指定检测正确信息的间隔时间

open_file_cache_min_uses 定义了 open_file_cache 中指令参数不活动时间期间里最小的文件数

分享到:
评论

相关推荐

    nginx优化 突破十万并发

    在探讨如何通过Nginx优化来突破十万并发之前,我们需要先了解Nginx的基本概念以及它的工作原理。Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。相比于Apache,Nginx使用了异步非阻塞的...

    nginx优化.pdf

    ### Nginx优化知识点 #### 一、Nginx配置文件优化 在Nginx配置文件中,有多个参数可以直接影响其性能表现,特别是在高并发场景下。下面将详细介绍几个关键参数及其设置策略: 1. **`worker_processes`**:表示...

    nginx优化详细优化参数

    ### Nginx优化详细参数详解 #### 一、Nginx优化分类 在进行Nginx优化时,主要可以从两大方面入手:**安全优化**与**性能优化**。 1. **安全优化**:旨在提高网站的安全性,防止恶意攻击、信息泄露等安全问题。 2. ...

    nginx优化方法

    nginx优化

    nginx优化配置,搭建高性能服务器

    一、Nginx优化配置 1. **工作模式选择**:Nginx支持两种工作模式,即`worker_processes`,可以选择单进程或多进程。多进程模式可以提高并发处理能力,但也要根据服务器硬件资源来设定合理数量。 2. **内存缓冲区...

    nginx优化与防盗链☆☆☆

    【标题】:“Nginx优化与防盗链”涵盖了Nginx服务器在性能调优和防止非法访问方面的核心知识点。Nginx作为一个高性能的HTTP和反向代理服务器,其高效的处理能力、轻量级的特性以及丰富的模块化设计,使其成为众多...

    nginx优化.docx

    【Nginx优化详解】 Nginx是一款高性能的HTTP和反向代理服务器,以其轻量级、高并发处理能力著称。为了最大化Nginx的性能,我们可以从多个方面进行优化,包括配置调整、内核参数优化等。以下是一些关键的优化策略: ...

    Nginx优化(十七)1

    【Nginx优化(十七)】教程主要关注的是如何优化Nginx,一个由俄罗斯开发者Igor Sysoev编写的高性能HTTP和反向代理服务器。Nginx以其高效的事件驱动模型(如epoll)而著称,这使得它在处理高并发连接时表现出色,...

    nginx优化--pdf说明文档

    **Nginx优化——突破十万并发的内核参数优化** Nginx,作为一个高性能的HTTP和反向代理服务器,广泛应用于各类网站和应用程序的负载均衡和静态内容处理。当面临高并发访问时,Nginx的性能优化显得尤为重要。本文将...

    56-TomcatNginx优化1

    【标题】: "56-TomcatNginx优化1" 【内容概述】 本文主要讨论如何优化Tomcat和Nginx的配置,以提升服务器性能。Tomcat是一个流行的Java应用服务器,而Nginx则是一款高效的反向代理服务器。在高并发场景下,对这两者...

    6.3: Nginx代理服务器 、 Nginx优化 、 总结和答疑.docx

    Nginx 代理服务器和优化技术 Nginx 代理服务器是一种常用的 Web 服务器代理技术,能够将用户的请求转发给多个后端 Web 服务器,提高网站的性能和可用性。在本节中,我们将学习如何使用 Nginx 实现反向代理功能,...

    nginx优化 突破十万并发1

    【Nginx优化 突破十万并发】 Nginx是一款高性能的HTTP和反向代理服务器,常用于网站高并发场景。要实现突破十万并发,关键在于合理配置Nginx的参数以及优化底层操作系统。以下是一些核心的Nginx优化策略: 1. **...

    nginx优化Memblaze高速IO应用

    **Nginx 优化 Memblaze 高速IO应用详解** 在现代的高性能网络服务环境中,高效的IO操作对于提升整体系统性能至关重要。Memblaze Q520是一款提供高速IO性能的固态存储设备,其优化策略对于使用Nginx作为Web服务器的...

    Nginx优化详解(超详细) - 龙福 - 博客园.mht

    Nginx优化详解(超详细) - 龙福 - 博客园.mht

    nginx优化详细

    ### Nginx优化详细知识点 #### 一、Nginx 运行工作进程个数的优化 - **重要性**:Nginx 的工作进程数直接影响到其处理并发请求的能力和资源利用效率。 - **配置建议**:推荐将 `worker_processes` 设置为 CPU 核心...

    老男孩教育Linux-Nginx优化-v6.pdf

    20171221L09-10老男孩Linux运维实战培训-Nginx服务生产实战应用指南02; Linux 运维课程期中架构部分 Nginx 服务企业级优化实战 2017-10 v1 版

    百万并发下的Nginx优化,看这一篇就够了!

    本文作者主要分享在Nginx性能方面的实践经验,希望能给大家带来一些系统化思考,帮助大家更有效地去做Nginx。   优化方法论 我重点分享如下两个问题: 保持并发连接数,怎么样做到内存有效使用。 在高并发的...

    nginx优化之request_time 和upstream_response_time差别1

    在Nginx服务器的性能优化过程中,理解和分析日志中的指标是至关重要的。本文将深入探讨两个关键的响应时间指标:`request_time` 和 `upstream_response_time`,以及它们在实际应用中的区别。 `request_time` 是...

    nginx优化 使用Google的开源TCMalloc库

    1:首先下载libunwind-1.1 ...然后安装 # tar zxvf libunwind-1.1.tar.gz # cd libunwind-1.1 # CFLAGS=-fPIC ./configure # make CFLAGS=-fPIC # make CFLAGS=-fPIC install ...# echo "/usr/local/lib" > /etc...优化完成

Global site tag (gtag.js) - Google Analytics