Re: nginx для отдачи больших файлов

Михаил Монашёв postmaster at softsearch.ru
Mon Feb 23 17:32:28 MSK 2009


Здравствуйте, Lin.

worker_processes 1; - маловато. В зависимости от нагрузки увеличивать,
если все воркеры на диске начинают лочиться. Это скорее всего решит
Вашу первую проблему.

L> Здравствуйте.
L> Система FreeBSD 7, 4 Гб RAM.
L> nginx нужно использовать для отправки файлов самого разного размера: от 2-3 кб до 2-3 гб.
L> Пытался подобрать оптимальный конфиг, но не очень получается.
L> Вот, что у меня на данный момент:


L> user www www;
L> worker_processes 1;

L> worker_rlimit_nofile 10240;
L> worker_rlimit_sigpending 32768;
L> worker_priority 5;

L> error_log /.../nginx_error_log info;

L> events {
L>     worker_connections  20480;
L>     use kqueue;
L> }

L> http {
L>     default_type    application/octet-stream;

L>     log_format main
L>         '$remote_addr - $remote_user [$time_local] '
L>             '"$request" $status $bytes_sent '
L>         '"$http_referer" "$http_user_agent" '
L>         '"$gzip_ratio"';



L> access_log /.../nginx_access_log main;




L>     client_header_timeout  60;
L>     client_body_timeout    60;
L>     send_timeout           120;
L>     proxy_read_timeout     180;
L>     proxy_connect_timeout  60;
L>     proxy_send_timeout     180;


L>     msie_padding on;

L>     proxy_buffer_size          32k;

L>     proxy_buffers              64 512k;
L>     proxy_busy_buffers_size    1024k;
L>     proxy_temp_file_write_size 1024k;

L>     gzip on;
L>     gzip_min_length  10240;
L>     gzip_buffers     32 64k;
L>     gzip_types       text/html application/x-javascript text/css text/xml
L> text/plain;

L>     client_header_buffer_size    4k;
L>     client_max_body_size 120000000;
L>     large_client_header_buffers  16 8k;

L>     sendfile       on;
L>     tcp_nopush     on;
L>     tcp_nodelay    on;

L>     output_buffers   32 256k;
L>     postpone_output  1460;

L>     lingering_time     30;
L>     lingering_timeout  6;
L>     reset_timedout_connection  on;

L>     keepalive_timeout  20;
L>     optimize_server_names on;

L>     index index.html;

L>     server {
L>         listen       ххх.ххх.ххх.ххх:80;
L>         server_name  ххх;
L>         location / {

L>             proxy_pass         http://127.0.0.1:81/;
L>             proxy_redirect     off;
L>             proxy_set_header   Host             $host;
L>             proxy_set_header   X-Real-IP        $remote_addr;
L>         }
L>     }
L> }


L> Но проблемы следующие:
L> - большие паузы перед отдачей файла (сразу после старта сервера
L> отдает сразу же, через некоторое время начинаются приличные паузы).
L> - непонятная скорость отдачи файлов. файлы отдаются рывками,
L> скорость иногда запредельно низкая (10-15 Кб/с, когда нормальная
L> 300-500 Кб/с).

L> Какие настройки нужно менять и где крутить?
L> Спасибо!








  

--

С уважением,
Михаил Монашёв, SoftSearch.ru
mailto:postmaster at softsearch.ru
ICQ# 166233339
http://michael.mindmix.ru/
Без бэкапа по жизни.






More information about the nginx-ru mailing list