ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Оптимизация для отдачи статики



Имеются тормоза с отдачей графики - в один поток файлы отдаются влегкую, при скачивании больших файлов складывается канал у клиента :) А вот с отдачей мелких файлов (99% файлов являются картинками с развернутой иерархией директорий) пачкой наблюдаются жесткие тормоза. Раздел с файлами - ramfs, синхронизируется скриптами с SSD-накопителем по мере появления изменений на последнем.

Конфиг:

user nobody;
worker_processes 8;
worker_rlimit_nofile 8192;
worker_priority -5;
timer_resolution 100ms;

error_log  /var/log/nginx/error.log warn;

events {
   worker_connections 8192;
   use epoll;
}

http {
   include    mime.types;
   default_type  application/octet-stream;

   server_tokens off;
   ignore_invalid_headers on;
   if_modified_since before;
   reset_timedout_connection on;
   underscores_in_headers on;
   sendfile on;
   sendfile_max_chunk 128k;
   keepalive_requests 1000;
   keepalive_timeout 30;
   keepalive_disable msie6;
   tcp_nopush on;
   tcp_nodelay on;
   send_timeout 30;
   connection_pool_size 256;
   client_header_buffer_size 256k;
   large_client_header_buffers 4 256k;
   client_max_body_size 200M;
   client_body_buffer_size 256k;
   client_header_timeout 30;
   client_body_timeout 30;
   request_pool_size 32k;
   postpone_output 1460;
   access_log off;

   output_buffers 128 512k;

   open_file_cache max=200000 inactive=20s;
   open_file_cache_valid 30s;
   open_file_cache_min_uses 1;
   open_file_cache_errors off;

   ssl_session_timeout 5m;
   ssl_prefer_server_ciphers on;
   ssl_session_cache  builtin:1000  shared:SSL:10m;

    server {
listen 0.0.0.0:80 rcvbuf=16834 sndbuf=16384 backlog=32000 default;
          server_name cdn.image.kg;
          access_log off;

          location / {
              root /var/www/ramdrive;
              expires max;
              add_header Cache-Control public;
              try_files $uri $uri/ /notfound.png;
          }
    }

   # SSL
    server {
listen 0.0.0.0:443 ssl default_server rcvbuf=16384 sndbuf=16384 backlog=32000 ;
          server_name cdn.image.kg;
          access_log off;

          ssl on;
          ssl_certificate /etc/nginx/ssl/cdn.image.kg.crt;
          ssl_certificate_key /etc/nginx/ssl/cdn.image.kg.key;
          ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
          ssl_ciphers  "RC4:HIGH:!aNULL:!MD5:!kEDH";

          location / {
              root /var/www/ramdrive;
              expires max;
              add_header Cache-Control public;
              try_files $uri $uri/ /notfound.png;
          }
    }
}

И еще в логах очень много такого:
2013/10/10 06:10:51 [alert] 26609#0: *13726 pread() read only 24709 of 24711 from "/var/www/ramdrive/6/2/45/125/WD63s4ds84de254.jpg" while sending response to client, client: <IP>, server: cdn.image.kg, request: "GET /6/2/45/125/WD63s4ds84de254.jpg?code=4532ew3 HTTP/1.1", host: "cdn.image.kg", referrer: "https://cdn.image.kg/view.php";

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.