Блокирование диска на запись
Eugene Janusov
eugene at annah.ru
Sun Apr 2 14:31:20 MSD 2006
Приветствую.
Вероятно, проблема вовсе не в nginx, но может быть кто-то подскажет, в
какую сторону смотреть.
Сервер занимается раздачей файлов от 0.5 Мб до 2 Гб.
Раньше на машине был 400 гиговый Seagate Barracuda и 200 гиговый Maxtor.
Сейчас заменили последний на ещё один 400 гиговый Seagate Barracuda.
Все диски SATA'шные.
Новые файлы появляются на сервере следующим образом. Сначала их
закачивают по ftp или wget'ом в закрытую директорию на первом диске,
проверяют и затем раскладывают в соответствующие директории, откуда они
доступны для скачивания через веб-сервер.
После замены диска появилась следующая проблема. При копировании файлов
с первого диска на второй копирование иногда останавливается, и срубить
этот процесс невозможно. Если же остановить nginx, то копирование
нормально завершается.
Может быть, это как-то связано с количеством читаемых nginx'ом файлов,
но вроде бы нагрузка не столь большая. В пиковые моменты значение
# lsof /dev/sdb1 | wc -l
не превышает 300, а процесс копирования бывает останавливается при 140,
хотя иногда всё нормально копируется и при 200.
На какие ещё параметры следует смотреть?
Диск разбит на одну партицию на все 400 Гб под reiserfs (наверно, не
лучший выбор для архива файлов, но раньше никаких проблем не возникало).
На диске несколько тысяч файлов в основном от 100 Мб до 2 Гб.
Система такая:
# uname -a
Linux 2.6.11-hardened-r15 #1 SMP i686 Intel(R) Pentium(R) 4 CPU 3.00GHz
GenuineIntel GNU/Linux
nginx-0.3.32, конфиг примитивный:
user nginx nginx;
worker_processes 2;
error_log /var/log/nginx/error.log;
#pid logs/nginx.pid;
events {
worker_connections 2048;
use epoll;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
sendfile on;
gzip on;
gzip_min_length 1024;
gzip_types text/plain application/xml;
index index.html;
server {
listen 80 default;
server_name files.domain.tld;
access_log /var/log/nginx/files/access.log;
error_log /var/log/nginx/files/error.log info;
autoindex on;
autoindex_exact_size off;
location / {
root /home/ftp;
}
}
}
--
Best regards,
Eugene Janusov.
More information about the nginx-ru
mailing list