Форум русскоязычного сообщества Ubuntu


Автор Тема: Nginx очень медленно отдает файлы  (Прочитано 4605 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Ащ

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Здравствуйте!

Nginx очень медленно отдает файлы, размером в 4 и 12 мегабайт. Скорость отдачи - менее 5 килобайт в секунду

Пробовал с типами файлов zip, tar.gz и flv, запрашивая из разных браузеров и флешплеера - "большие" файлы с сервера скачиваются очень медленно.

При этом все "мелкие" файлы, от 50 до 500 килобайт отдает очень быстро. Страницы сайтов загружаются визуально быстро, аяксовые интерфейсы сайтов реагируют живо, практически моментально, без какой-то заметной задержки.

Ограничений со стороны провайдера достоверно нет. Apache нет.

Вот некоторая информация, версия nginx, ОС и конфигурация /etc/nginx/nginx.conf

Код: Bash
  1. Server:nginx/0.7.65
  2.  
  3. Linux ****.ru 2.6.32-35-generic-pae #78-Ubuntu SMP Tue Oct 11 17:01:12 UTC 2011 i686 GNU/Linux
  4. Ubuntu 10.04.4 LTS
  5.  
  6. Welcome to Ubuntu!
  7.  * Documentation:  https://help.ubuntu.com/
  8. Last login: Sun Apr 29 20:20:31 2012 from 83.149.44.113
  9. root@**** ~ # mc
  10.  
  11. root@**** ~ # uname -a
  12. Linux ****.ru 2.6.32-35-generic-pae #78-Ubuntu SMP Tue Oct 11 17:01:12 UTC 2011 i686 GNU/Linux
  13. root@**** ~ # cat /etc/nginx/nginx.conf
  14. user www-data;
  15. worker_processes  1;
  16.  
  17. error_log  /var/log/nginx/error.log;
  18. pid        /var/run/nginx.pid;
  19.  
  20. events {
  21.     worker_connections  1024;
  22.     # multi_accept on;
  23. }
  24.  
  25. http {
  26.     include       /etc/nginx/mime.types;
  27.  
  28.     access_log  /var/log/nginx/access.log;
  29.  
  30.  #   sendfile        on;
  31. #       sendfile_max_chuck 1m;
  32.    # limit_rate 1024000;
  33.     #tcp_nopush     on;
  34.  
  35.     #keepalive_timeout  0;
  36.     keepalive_timeout  65;
  37.     tcp_nodelay        on;
  38.  
  39.     gzip  on;
  40.     gzip_disable "MSIE [1-6]\.(?!.*SV1)";
  41.  
  42.     include /etc/nginx/conf.d/*.conf;
  43.     include /etc/nginx/sites-enabled/*;
  44. }
  45.  



Вот конфигурация одного из виртуальных хостов на этом сервере
Код: Bash
  1. root@**** ~ # cat /etc/nginx/sites-available/****.ru
  2. server {
  3.  
  4.         root /home/****/****.ru/www;
  5.         index index.html index.php;
  6.         error_log  /home/****/****/error.log;
  7.  
  8.         charset         utf8;
  9.         source_charset  utf8;
  10.  
  11.         server_name ****.ru;
  12.  
  13.         location / {
  14.                 # First attempt to serve request as file, then
  15.                 # as directory, then fall back to index.html
  16.                 try_files $uri $uri/ /index.html /index.php;
  17.         }
  18.         #error_page 404 /404.html;
  19.  
  20.         # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
  21.         #
  22.         location ~ \.php$ {
  23.                fastcgi_pass   127.0.0.1:9000;
  24.                fastcgi_index  index.php;
  25.                fastcgi_param  SCRIPT_FILENAME  /home/****/****.ru/www$fastcgi_script_name;
  26.                include fastcgi_params;
  27.        }
  28.         # deny access to .htaccess files, if Apache's document root
  29.         # concurs with nginx's one
  30.         #
  31.         location ~ /\.ht {
  32.                 deny all;
  33.         }
  34.  
  35. }
  36.  
« Последнее редактирование: 08 Май 2012, 12:36:57 от yorik1984 »

Оффлайн unixod

  • Участник
  • *
  • Сообщений: 114
    • Просмотр профиля
Re: Nginx очень медленно отдает файлы
« Ответ #1 : 08 Май 2012, 11:36:44 »
А по другим протоколам отдает нормально?

Оффлайн Ащ

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: Nginx очень медленно отдает файлы
« Ответ #2 : 08 Май 2012, 12:25:32 »
Да. По SSH туда-сюда все скачивается на очень высокой скорости.

Оффлайн unixod

  • Участник
  • *
  • Сообщений: 114
    • Просмотр профиля
Re: Nginx очень медленно отдает файлы
« Ответ #3 : 08 Май 2012, 12:28:39 »
К сожалению в nginx не силен... но попробуйте отключить gzip сжатие..

Оффлайн Ащ

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: Nginx очень медленно отдает файлы
« Ответ #4 : 08 Май 2012, 13:40:15 »
Стало повеселее, но незначительно. Теперь скорость отдачи около 10-50к в секунду. Видео смотреть неудобно.

С других сайтов файлы скачиваются 500к.

Оффлайн drako

  • Старожил
  • *
  • Сообщений: 1422
    • Просмотр профиля
Re: Nginx очень медленно отдает файлы
« Ответ #5 : 08 Май 2012, 14:06:39 »
А разрешение для статики не нужно уже?  ???
# Static files location
location ~*^.+\.(jpg|jpeg|gif|png|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|tar|wav|bmp|rtf|js)$
        {
            root   /var/www/;
        }

Оффлайн Ащ

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: Nginx очень медленно отдает файлы
« Ответ #6 : 08 Май 2012, 14:57:41 »
А разрешение для статики не нужно уже?  ???
# Static files location
location ~*^.+\.(jpg|jpeg|gif|png|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|tar|wav|bmp|rtf|js)$
        {
            root   /var/www/;
        }

Попробовал - НА сервер перестали загружаться картинки. Не понял почему :)

Оффлайн drako

  • Старожил
  • *
  • Сообщений: 1422
    • Просмотр профиля
Re: Nginx очень медленно отдает файлы
« Ответ #7 : 08 Май 2012, 15:15:35 »
Попробовал - НА сервер перестали загружаться картинки. Не понял почему :)
Путь в директиве root надеюсь поменяли на путь до вашего сайта?


 

Страница сгенерирована за 0.069 секунд. Запросов: 25.