Directio влияет на загрузку памяти?

Shemaeva k.sh770 на gmail.com
Пт Ноя 19 13:11:39 MSK 2010


Всем доброго дня!

Проводила нагрузочное тестирование для нового сервера, заодно 
рассматривала различные параметры конфигурации (для предполагаемой 
нагрузки). 
Предполагается, что основная задача сайта - это загрузка  с него файлов 
(размер файлов может быть от 2К до 12М байт).
Тесты проводились сериями, отображавшими различную нагрузку на сайт и с 
выбранными настройками nginx ( график загрузки памяти во вложении).
Всего было три типа тестирования:
Нагрузка в 5 запросов/сек.
Нагрузка в 12 запросов/сек.
Нагрузка  в 17 запросов/сек.
Время тестирования выбрано 20 минут (для  каждой ситуации).

В процессе тестирования было желание проверить, как влияет параметр 
directio на  загрузку данных в кеш ( хотелось уменьшить кеширование 
файлов, размер которых превышает 5к). Было проведено две серии тестов с 
включенным и отключенным параметром, в итоге значимого прироста 
свободного кеша обнаружено не было (вторая серия на графике из трех пиков).

В чем причина такого поведения?
Можно ли оптимизировать использование памяти, используя другие параметры 
(нужно ли)? ( опыт в настройке nginx  у меня небольшой и есть 
вероятность, что я рою не в том направлении).

Заранее спасибо за ответы.


Железо:
Сервер:
Процессор:  Intel® Core™ i3-530 Processor (4M Cache, 2.93 GHz)
Память: 4ГБ
Диск: 2 SATA диска

Клиент:
Процессор: Intel(R) Pentium(R) Dual  CPU  E2140  @ 1.60GHz
Память: 2GB
Диск: 1 SATA

Клиент и сервер напрямую подключены к друг другу (интерфейсы на обоих 
1GB/sec)

ОС:
CentOS release 5.5 (Final)


Версия nginx:
nginx -V
nginx version: nginx/0.8.53
configure arguments: --conf-path=/etc/local/nginx/nginx.conf 
--error-log-path=/var/log/nginx/error.log 
--pid-path=/var/log/nginx/nginx.pid --with-http_ssl_module 
--with-http_stub_status_module

Конфигурационный файл nginx
$grep -v "^$\|^#" /etc/nginx/nginx.conf
worker_processes  12;
worker_rlimit_nofile  10240;
events {
    worker_connections  10240;
    use epoll;
}
pid /var/run/nginx_sda.pid;
http {
    include       /etc/local/nginx/mime.types;
    default_type  application/octet-stream;
    log_format  main1  '[$time_local] $request_time 
$upstream_response_time "$request"';
    large_client_header_buffers 2 32k;
    server_tokens       off;
    proxy_hide_header X-Powered-By;
    fastcgi_hide_header X-Powered-By;
    output_buffers 1 512k;
    sendfile        on;
    directio 5k;
    access_log off;
    keepalive_timeout  0;
    server {
    listen       8080 sndbuf=512k;
    server_name  app1.tlan;
    error_log   /var/log/nginx/sda.error_log warn;
    access_log  /var/log/nginx/sda.access_log main1;
        limit_rate 200k;
        location /slow {
            root /mnt/data_sda6/site1;
            limit_rate_after  500k;
            limit_rate 40k;
        }

        location /nginx_status {
        stub_status on;
            access_log off;
        }
        root /mnt/data_sda6/site1;
    }

}
----------- следущая часть -----------
A non-text attachment was scrubbed...
Name: nginx_mail_list.png
Type: image/png
Size: 20451 bytes
Desc: отсутствует
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20101119/b78e5a9d/attachment-0001.png>


Подробная информация о списке рассылки nginx-ru