中文在线资源天堂_亚洲欧洲日本在线_欧美视频在线看_三级福利视频_久久av动漫_在线免费观看亚洲

Web前端知識

首頁 > 免費 > Web前端知識 >

你知道高流量站點NGINX與PHP-fpm配置是如何優化的嗎?

來源:北京匯仁智杰科技有限公司   時間:2016-04-09   點擊:

  很多時候,我沒都會問一個問題,那些高流量的站點是如何做到有那么多的流量的?他們配置后又是如何優化的呢?那么今天匯仁智杰的程序大師就和大家說說我們該如何優化。
  1. 將TCP切換為UNIX域套接字
  UNIX域套接字相比TCP套接字在loopback接口上能提供更好的性能(更少的數據拷貝和上下文切換)。
  但有一點需要牢記:僅運行在同一臺服務器上的程序可以訪問UNIX域套接字(顯然沒有網絡支持)。
  upstream backend
  {
      # UNIX domain sockets
      server unix:/var/run/fastcgi.sock;

      # TCP sockets
      # server 127.0.0.1:8080;
  }
  2. 調整工作進程數
  現代計算機硬件是多處理器的,NGINX可以利用多物理或虛擬處理器。
  多數情況下,你的Web服務器都不會配置為處理多種任務(比如作為Web服務器提供服務的同時也是一個打印服務器),你可以配置NGINX使用所有可用的處理器,NGINX工作進程并不是多線程的。
  運行以下命令可以獲知你的機器有多少個處理器:
  Linux上 -
  cat /proc/cpuinfo | grep processor
  FreeBSD上 -
  sysctl dev .cpu | grep location
  將nginx.conf文件中work_processes的值設置為機器的處理器核數。
  同時,增大worker_connections(每個處理器核心可以處理多少個連接)的值,以及將"multi_accept"設置為ON,如果你使用的是Linux,則也使用"epoll":
  # We have 16 cores
  worker_processes 16;

  # connections per worker
  events
  {
  worker_connections 4096;
  multi_accept on;
  }
  3. 設置upstream負載均衡
  以我們的經驗來看,同一臺機器上多個upstream后端相比單個upstream后端能夠帶來更高的吞吐量。
  例如,如果你想支持最大1000個PHP-fpm子進程(children),可以將該數字平均分配到兩個upstream后端,各自處理500個PHP-fpm子進程:
  upstream backend {
  server unix:/var/run/php5-fpm.sock1 weight=100 max_fails=5 fail_timeout=5;
  server unix:/var/run/php5-fpm.sock2 weight=100 max_fails=5 fail_timeout=5;
  }
  4. 禁用訪問日志文件
  這一點影響較大,因為高流量站點上的日志文件涉及大量必須在所有線程之間同步的IO操作。
  access_log off;
  log_not_found off;
  error_log /var/log/nginx-error.log warn;
  若你不能關閉訪問日志文件,至少應該使用緩沖:
  access_log /var/log/nginx/access.log main buffer=16k;
  5. 啟用GZip
  gzip on;
  gzip_disable "msie6";
  gzip_vary on;
  gzip_proxied any;
  gzip_comp_level 6;
  gzip_min_length 1100;
  gzip_buffers 16 8k;
  gzip_http_version 1.1;
  gzip_types text/plain text/css application/json application/x-javascript text/xml   application/xml application/xml+rss text/javascript;
  6. 緩存被頻繁訪問的文件相關的信息
  open_file_cache max=200000 inactive=20s;
  open_file_cache_valid 30s;
  open_file_cache_min_uses 2;
  open_file_cache_errors on;
  7. 調整客戶端超時時間
  client_max_body_size 500M;
  client_body_buffer_size 1m;
  client_body_timeout 15;
  client_header_timeout 15;
  keepalive_timeout 2 2;
  send_timeout 15;
  sendfile on;
  tcp_nopush on;
  tcp_nodelay on;
  8. 調整輸出緩沖區大小
  fastcgi_buffers 256 16k;
  fastcgi_buffer_size 128k;
  fastcgi_connect_timeout 3s;
  fastcgi_send_timeout 120s;
  fastcgi_read_timeout 120s;
  reset_timedout_connection on;
  server_names_hash_bucket_size 100;
  9. /etc/sysctl.conf調優
  # Recycle Zombie connections
  net.inet.tcp.fast_finwait2_recycle=1
  net.inet.tcp.maxtcptw=200000

  # Increase number of files
  kern.maxfiles=65535
  kern.maxfilesperproc=16384

  # Increase page share factor per process
  vm.pmap.pv_entry_max=54272521
  vm.pmap.shpgperproc=20000

  # Increase number of connections
  vfs.vmiodirenable=1
  kern.ipc.somaxconn=3240000
  net.inet.tcp.rfc1323=1
  net.inet.tcp.delayed_ack=0
  net.inet.tcp.restrict_rst=1
  kern.ipc.maxsockbuf=2097152
  kern.ipc.shmmax=268435456

  # Host cache
  net.inet.tcp.hostcache.hashsize=4096
  net.inet.tcp.hostcache.cachelimit=131072
  net.inet.tcp.hostcache.bucketlimit=120

  # Increase number of ports
  net.inet.ip.portrange.first=2000
  net.inet.ip.portrange.last=100000
  net.inet.ip.portrange.hifirst=2000
  net.inet.ip.portrange.hilast=100000
  kern.ipc.semvmx=131068

  # Disable Ping-flood attacks
  net.inet.tcp.msl=2000
  net.inet.icmp.bmcastecho=1
  net.inet.icmp.icmplim=1
  net.inet.tcp.blackhole=2
  net.inet.udp.blackhole=1
  10. 監控
  持續監控打開連接的數目,空閑內存以及等待狀態線程的數目。
  設置警報在超出閾值時通知你。你可以自己構建這些警報,或者使用類似ServerDensity的東西。
  確認安裝了NGINX的stub_status模塊。該模塊默認并不會編譯進NGINX,所以可能你需要重新編譯NGINX -
  ./configure --with-http_ssl_module --with-http_stub_status_module --without-  mail_pop3_module
  --without-mail_imap_module --without-mail_smtp_module
  make install BATCH=yes
  以上呢!就是匯仁智杰小編和大家說的,希望對你有所幫助,今天的內容就分享這些啦。

網絡營銷推廣?。”本﹨R仁智杰科技有限公司!

地址:北京市昌平區回龍觀龍冠大廈5層
咨詢:13370157521
業務QQ:373002979
E - mail:sales @ huirenzhijie.com
企業網站備案:京ICP備15021091號-1

匯仁智杰與眾不同

  • 有網絡推廣經驗
  • 有網站建站隊伍
  • 有大型網站建設經驗
  • 致力于營銷型網站建設
  • 始終堅持技術和服務同樣重要
查看PC版網站
備案號:京ICP備15021091號-1 版權所有:匯仁智杰

主站蜘蛛池模板: 久久精品综合 | 暖暖成人免费视频 | 91在线入口| 亚洲xx站| 国产在线国产 | 亚洲国产天堂久久综合 | 国产农村妇女精品久久 | 日韩一区二区精品 | 亚洲欧美激情另类 | 日韩久久久久久 | 午夜影院在线 | 九九热这里只有精品8 | 精品一区不卡 | 久久久国产视频 | 国产视频第一页 | 久久www免费人成看片高清 | 超碰av在线 | 亚洲视频在线观看免费 | 99re99| 九草在线 | 中国一级免费毛片 | 热久久这里只有精品 | 国产一区二区在线视频 | 激情欧美一区二区三区中文字幕 | 国产精品视频久久久 | 特级av| 精品一区二区久久久久久久网站 | 亚洲成人二区 | 一区二区三区久久 | 综合精品久久久 | 视频一区二区中文字幕日韩 | a一级片在线观看 | av网站在线免费看 | 成人在线播放 | 中国一级毛片 | 国产日韩精品在线观看 | 亚洲国产高清高潮精品美女 | 日韩日b视频| 欧美日韩一区二区视频在线观看 | 国产一区二区三区四区在线观看 | 一级毛片在线播放 |