武汉PHP培训
达内武汉民大中心

15827352908

热门课程

php高并发大流量站点nginx优化

  • 时间:2018-02-28 14:33
  • 发布:武汉PHP培训
  • 来源:互联网

    我们的站点目前能应对千万级PV以及百万级的并发,对php+nginx的优化有一点点心得,写下来做一些记录.
    1.TCP sockets 与Unix sockets
    Unix sockets比TCP sockets提供更好一些的性能(因为I/O数据读写少,上下文切换少).
    upstream backend
    {
    server unix:/var/run/fastcgi.sock;
    # server 127.0.0.1:8080;
    }
    2.禁用或者优化access_log
    大流量访问时,较大的访问会导致访问日志对磁盘的读写非常大.如果不需要日志的话,可以禁用掉.
    access_log off;
    log_not_found off;
    或者打开缓冲
    access_log /var/log/nginx/access.log main buffer=32k;
    3.打开Gzip
    gzip on;
    gzip_min_length 1k;
    gzip_buffers 4 16k;
    gzip_http_version 1.0;
    gzip_comp_level 2;
    gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
    gzip_vary on;
    gzip_proxied expired no-cache no-store private auth;
    gzip_disable "MSIE [1-6]\.";

    4.优化输出缓存

武汉PHP培训

    fastcgi_buffers 256 16k;
    fastcgi_buffer_size 128k;
    fastcgi_connect_timeout 3s;
    fastcgi_send_timeout 120s;
    fastcgi_read_timeout 120s;
    fastcgi_busy_buffers_size 256k;
    fastcgi_temp_file_write_size 256k;
    5.优化worker processes
    nginx是多进程的而不是多线程的,对于进程相关的配置我们需要如下优化.
    首先看一下服务器的处理器数.
    cat /proc/cpuinfo | grep processor
    然后设置worker_processes,进程数为得到的处理器数. worker_connections 是每一个进程可以打开的最大连接数,可以调大一些.下面给一个参考.
    # We have 16 cores
    worker_processes 16;
    # connections per worker
    events
    {
    worker_connections 4096;
    multi_accept on;

    }

更多武汉PHP培训相关咨询,请扫描下方二维码

武汉PHP培训

马上预约七天免费试听课

姓名:

电话:

上一篇:PHP实现网站访问量计数器
下一篇:听大牛讲述C语言

达内教育集团总裁韩少云:双师模式的实践与思考

达内与广西教育学院携手签约,共建专业开启校企合作新阶段!

Java工程师岗位面试总结,看完了才发现知识不够用!

PHP中的堆是如何工作?

选择城市和中心
贵州省

广西省

海南省

有位老师想和您聊一聊