Proxy cache с использованием Slice для MP4 медленно отдается клиенту

Klark nginx-forum на forum.nginx.org
Вт Дек 3 18:50:57 UTC 2019


Не могу понять в чем же дело. Есть 2 простеньких сервера (Core i3,16GB Озу)
на одном из них несколько HDD а на втором только SSD которые сделаны для
кеша соединенны  они через локальную сеть 1gbit. На кеш сервере через второй
порт сетевой карты идет подача внешнего интернета. 

Конфиг кеш сервера
proxy_cache_path /var/www/html/cache levels=1:2:2 loader_threshold=300
loader_files=300  keys_zone=ssd_cache:300m max_size=150G inactive=12h
use_temp_path=off;

server {
        listen *:80;

        location / {
                aio threads=default;
                aio_write on;
                proxy_http_version 1.1;
                proxy_set_header Connection "";
                slice 3m;
                proxy_set_header Range $slice_range;
                proxy_cache_valid 200 206 24h;
                proxy_cache ssd_cache;
                proxy_cache_key $uri$slice_range;
                proxy_pass http://10.0.0.1:80;
                proxy_cache_lock on;
                proxy_cache_lock_age 50s;
                proxy_cache_lock_timeout 0s;
                proxy_cache_use_stale updating;
                proxy_connect_timeout      30;
                proxy_send_timeout         90;
                proxy_read_timeout         90;
                proxy_buffer_size          8k;
                proxy_buffers              4 32k;
                proxy_busy_buffers_size    64k;
        }
}

Конфиг файлового сервера 


server {

        listen 80 reuseport;
        root /var/www/video/public_html/;

        location / {

                access_log on;
                aio threads;
                directio 256k; #512
                output_buffers 16 8m;
                keepalive_timeout 10s;
                expires max;
                sendfile on;
                sendfile_max_chunk 512k;
                open_file_cache    max=100000 inactive=10m;
                open_file_cache_valid    5m;
                open_file_cache_min_uses 1;
                open_file_cache_errors   on;

        }
}

При включении онлайн видео 1мб видео скачивается почти 1.5-2 секунды
соответстено видео обычно начинается секунд через 10-15
перемотка тоже проходит секунды 4-6. Самое что не понятное интернет канал
(Интернет канал тоже 1Gb) даже на половину не нагружен, смотрят видео в этот
момент около 50-70 человек. Понять не могу почему же так происходит, как
решить подобную проблему? 


P.S диски на файловом сервере тоже не нагружены если делать скачивание без
кеша то скорость скачивания максимальная какая доступна дома (11мб при
соединение с интернетом 100мбит)

Posted at Nginx Forum: https://forum.nginx.org/read.php?21,286394,286394#msg-286394



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