nginx性能优化

news/2024/7/9 18:02:15 标签: 运维, php, epoll

nginx性能优化

1.worker_processes n;

  nginx 进程数,一般为cpu的倍数

2.worker_cpu_affinity 00000001 00000010 ..

  为每个进程分配cpu,可多写几个,也可将一个进程分配到多个cpu

3. worker_rlimit_nofile 65535;

  nginx进程打开的最多文件描述符数目,查看linux系统文件描述符的方法   

[root@ray ~]# sysctl -a | grep fs.file
fs.file-max = 1599020
fs.file-nr = 10240    0    1599020

4.use epoll

  使用epoll的I/O模型

5.worker_connections 65535;

  每个进程序允许的最多连接数,理论上每台服务器的最大连接数为 worker_processes * worker_connections

6.keepalive_timeout 60;

   keepalive超时时间

7.client_header_buffer_size 4k;

  客户端请求头部的缓冲区大小,一般设置为系统分页大小的倍数。

[root@ray ~]# getconf PAGESIZE
4096

8.oepn_file_cache max=65535 inactive=60s;

  为打开文件指定缓存,max值一般和打开文件数以值,inactive 指经过多长时间文件没被请求后删除缓存

9.open_file_cache_valid 80s;

  多长时间检查一次缓存的有效信息

10.open_file_cache_min_uses 1;

user nginx;
worker_processes 8;
worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000;
error_log /www/log/nginx_error.log crit;
pid /usr/local/nginx/nginx.pid;
worker_rlimit_nofile 204800;
events
{
use epoll;
worker_connections 204800;
}
http
{
include mime.types;
default_type application/octet-stream;
charset utf-8;
server_names_hash_bucket_size 128;
client_header_buffer_size 2k;
large_client_header_buffers 4 4k;
client_max_body_size 8m;
sendfile on;
tcp_nopush on;
keepalive_timeout 60;
fastcgi_cache_path /usr/local/nginx/fastcgi_cache levels=1:2
keys_zone=TEST:10m
inactive=5m;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 4k;
fastcgi_buffers 8 4k;
fastcgi_busy_buffers_size 8k;
fastcgi_temp_file_write_size 8k;
fastcgi_cache TEST;
fastcgi_cache_valid 200 302 1h;
fastcgi_cache_valid 301 1d;
fastcgi_cache_valid any 1m;
fastcgi_cache_min_uses 1;
fastcgi_cache_use_stale error timeout invalid_header http_500;
open_file_cache max=204800 inactive=20s;
open_file_cache_min_uses 1;
open_file_cache_valid 30s;
tcp_nodelay on;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml;
gzip_vary on;
server
{
listen 8080;
server_name xxx.com;
index index.php index.htm;
root /www/html/;
location /status
{
stub_status on;
}
location ~ .*/.(php|php5)?$
{
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fcgi.conf;
}
location ~ .*/.(gif|jpg|jpeg|png|bmp|swf|js|css)$
{
expires 30d;
}
log_format access ‘$remote_addr — $remote_user [$time_local] “$request” ‘
‘$status $body_bytes_sent “$http_referer” ‘
‘”$http_user_agent” $http_x_forwarded_for’;
access_log /www/log/access.log access;
}
}

 

转载于:https://www.cnblogs.com/ray-mmss/p/10388617.html


http://www.niftyadmin.cn/n/706323.html

相关文章

Android项目实战(三十三):AS下获取获取依赖三方的jar文件、aar 转 jar

使用 Android studio 开发项目中,有几种引用三方代码的方式:jar 包 ,类库 ,gradle.build 的compile依赖。 大家会发现github上不少的项目只提供compile依赖的方式,但是当用到jar包使用过的情况 且 该项目不提供jar包的…

python列表常用的操作

1、增删改查 增 li []li.append(a) # 在列表li中添加一个a字符串 li.insert(2, b) # 在列表li的第3位插入b字符串 li.extend(mu) # 在列表li末尾增加两个字符串m, u,改函数将可迭代对象分解为最小单元,再插入列表末尾,所以纯数字插不了&a…

2017年十大重量级Bug赏金计划

2015年,《The State of Security》公布了11项重量级Bug赏金框架。自那时以来,众多企业甚至包括部分政府机关也开始启动自己的安全漏洞赏金计划(简称VRP)。而两年之后的今天,我们自然有必要对新一年中的相关计划作出回顾…

3.31

锵锵……这几天的存货 URL: c.y.qq.com/soso/fcgi- bin/client_search_cp?ct24&qqmusic_ver1298&new_json1&remoteplacetxt.yqq.song&searchid5408100844 7180849&t0&aggr1&cr1&catZhida1&lossless0&flag_qc0&p1&n10&w%E…

MyBatis基础:MyBatis动态SQL(3)

1. 概述 MyBatis中动态SQL包括元素: 元素作用备注if判断语句单条件分支判断choose(when、otherwise)相当于Java中的case when语句多条件分支判断trim(where、set)辅助元素用于处理SQL拼接问题foreach循环语句用于in语句…

网络-数据链路层的三个基本概念

数据链路层的三个基本问题 1. 封装成帧 封装成帧(framing):就是在一段数据的前后分别添加首部和尾部,这样就构成了一个帧。接收端在收到物理层上交的比特流后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束。分组…

Linux centos如何让普通用户获取Root权限?超详细图文教程

前提条件 你需要有一台云服务器,并且是Linux操作系统。这里我用的是阿里云的服务器这里也分享一个:免费的阿里云服务器给大家使用。就是普通用户拥有root权限,仅供学习使用。你会使用shell工具,链接Linux远程云服务器。这里我使用…

湘鄂情由餐饮投身大数据 联姻中科院更名中科云网

ZDNet至顶网软件频道 综合消息: 今天有关于著名餐饮企业湘鄂情进军大数据的消息被媒体广泛报道。昨天晚间湘鄂情发布《第三届董事会第二十一次会议决议公告》,正式更名中科云网,投身大数据。公告内容如下: 大数据时代来临&#xf…