Chinaunix首页 | 论坛 | 博客
  • 博客访问: 97340
  • 博文数量: 25
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 316
  • 用 户 组: 普通用户
  • 注册时间: 2012-08-02 00:39
文章分类

全部博文(25)

文章存档

2013年(25)

我的朋友

分类: 系统运维

2013-04-22 16:30:14

以下为nginx基本配置中nginx.conf中增加或调整的参数,

经测试 10000并发连接,10秒的页面请求时间,调整后的配置比调整前配置性能(每秒页面请求数)提高12%


#2*CPU核数
worker_processes  8;


#使用tcmalloc作为每个worker内存池的申请和释放
google_perftools_profiles /tmp/tcmalloc;


#每个worker文件描述符(FD)大最大值
worker_rlimit_nofile 51200;


#linux使用epoll作为文件描述符(FD)的多路复用,freebsd使用kqueue,linux也可使用kqueue,根据测试会比
#epoll性能差10倍
    use epoll;


#每个worker连接的最大值
    worker_connections  51200;


#多个虚拟主机存入hash表中,该参数指定hash bucket大小,影响虚拟主机名的查找
    server_names_hash_bucket_size 128;


#以下参数控制nginx读取headers(如request header)使用的内存大小,如过小则出现400错误
    client_header_buffer_size 32k;

    large_client_header_buffers 4 32k;   


#使用sendfile 系统调用,提升文件传输性能,直接使用kernel缓冲区,不使用用户缓冲区
    sendfile        on;


#和tcp_nodelay一起,控制sendfile的行为,使用nagle算法,减少tcp无用负载的发送
    tcp_nopush     on;

    #keepalive_timeout  0;

    keepalive_timeout  60;

    tcp_nodelay on;


#解决bad gateway 502错误
    fastcgi_connect_timeout 300;

    fastcgi_send_timeout 300;

    fastcgi_read_timeout 300;



#使用多大的缓冲区读取fastCGI应答头,可以随内存增大而增加
    fastcgi_buffer_size 64k;

    fastcgi_buffers 4 64k;

    fastcgi_busy_buffers_size 128k;

    fastcgi_temp_file_write_size 128k;


#使用gzip压缩,减少网络负载
    gzip  on;
阅读(627) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~