Re: blockdev direct IO при отдаче видео с XFS (soft RAID) и ext4 (singl HDD)
Gena Makhomed
gmm на csdoc.com
Пт Ноя 11 17:42:59 UTC 2011
On 11.11.2011 16:40, kozakd wrote:
> При нагрузке порядка 1500 конектов и
> ближе к 2 Gbps
> ловлю в ps это blockdev_direct_IO
> Есть варианты решения?
а в чем проблема?
> CenOS 6.0 2.6.32-71.29.1.el6.x86_64
вроде бы - Fixed In Version: kernel-2.6.32-183.el6
https://bugzilla.redhat.com/show_bug.cgi?id=725444
> worker_processes 1;
> worker_rlimit_nofile 32000;
> events {
> worker_connections 16000;
> }
увеличить количество воркеров и выключить aio/directio/sendfile
- разве это не поможет убрать состояние blockdev_direct_IO в ps?
> sendfile on;
> tcp_nopush on;
> tcp_nodelay on;
> aio on;
> directio 4m;
> directio_alignment 4k;
> output_buffers 1 1m;
output_buffers вроде бы не используются если sendfile on;
кроме того, в документации к nginx написано:
http://nginx.org/ru/docs/http/ngx_http_core_module.html#aio
"Для работы AIO нужно выключить sendfile".
http://nginx.org/ru/docs/http/ngx_http_core_module.html#directio
"Директива автоматически запрещает (0.7.15) использование sendfile'а для
данного запроса."
> proxy_buffering off;
если надо чтобы не использовалась буферизация ответов
от backend-серверов на диск, то лучше так и написать:
proxy_buffering on;
proxy_max_temp_file_size 0;
--
Best regards,
Gena
Подробная информация о списке рассылки nginx-ru