Welcome! Log In Create A New Profile

Advanced

Re: MP4 + proxy_cache/proxy_store

Alexander Moskalenko
October 25, 2011 10:10AM
Спасибо за конфиг, к сожалению уперся в out на origin серверах.
Если же сделать с limit_zone по $uri то edge укладывается по IO.

Я тут немного переработал конфиг, вышло вот такое, если кому интересно.

limit_zone one $binary_remote_addr 64k;

server {
listen 127.0.0.1:812;
server_name _;

root /media;
location / {
limit_conn one 1;
proxy_pass http://origin;
proxy_ignore_client_abort on;
proxy_store on;
}
}

server {
listen 1.1.1.1:80;
server_name _;

root /media;
location / {
internal;
aio on;
directio 512;
output_buffers 1 128k;

location ~* \.mp4$ {
mp4;
try_files $uri @origin;
limit_rate_after 1m;
limit_rate 200k;
}

location ~* \.flv$ {
flv;
try_files $uri @origin;
limit_rate_after 1m;
limit_rate 200k;
}
}

location /dl/ {
return 503;
location ~ ^/dl/(?P<secure_hash>[\w\-=]+,\d+)(?P<file>/.+)$ {
secure_link $secure_hash;
secure_link_md5 $secure_link_expires.$file.<passphrase>;

if ($secure_link = "") {
return 403;
}
if ($secure_link = 0) {
return 403;
}
rewrite ^ /$file last;
}
}

location @origin {
proxy_pass http://127.0.0.1:812;
proxy_ignore_client_abort on;
proxy_intercept_errors on;
error_page 503 = @stream;
}

location @stream {
proxy_pass http://origin;
proxy_buffering off;
}
}


2011/10/24 Kruglov Eugenie <ekruglov@gmail.com>

> limit_zone one $binary_remote_addr 64k;
> server {
> listen 127.0.0.101:812;
> server_name host_stream_store;
>
> location ~ '^/store/(\d+_(\d+)_[\da-f]{32}\.flv)$' {
> limit_conn one 1;
> proxy_pass http://remote-backend/$1;
> proxy_store /mnt/storage/streaming/$2.flv;
> }
> }
>
> server {
> server_name frontend;
>
> location ~ '^/\d+_(\d+)_[\da-f]{32}\.flv$' {
> set $args_start $args;
> if ( -f /mnt/storage/streaming/$1.flv ){
> rewrite ^ /stream$request_uri last;
> }
> rewrite ^ /stream_store$request_uri last;
> }
> location @stream {
> proxy_pass http://remote-backend$request_uri;
> proxy_set_header Host remote-backend;
> }
> location ~ '^/stream_store/(\d+_\d+_[\da-f]{32}\.flv)' {
> internal;
> proxy_pass http://127.0.0.101:812/store/$1;
> proxy_intercept_errors on;
> error_page 503 = @stream;
> }
> location ~ ^/stream/\d/\d/([^/]+\.flv)$ {
> internal;
> set $args $args_start;
> alias /mnt/storage/streaming/$1;
> mp4;
> }
> }
>
> 2011/10/24 Alexander Moskalenko <alexander.moskalenko@gmail.com>
>
>> 2011/10/24 Kruglov Eugenie <ekruglov@gmail.com>
>>
>>> Если устроит реализация, при которой во время работы proxy_store одному
>>> клиенту все остальные проксируются на бекенд - могу выложить конфиг.
>>>
>>> Выкладывайте, возможно хоть подтолкет в нужное направление.
>>
>> _______________________________________________
>> nginx-ru mailing list
>> nginx-ru@nginx.org
>> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>>
>
>
>
> --
> Faithfully yours, Eugenie
> ICQ #701217
> GTalk ekruglov@gmail.com
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

MP4 + proxy_cache/proxy_store

Alexander Moskalenko October 24, 2011 05:00AM

Re: MP4 + proxy_cache/proxy_store

Igor Sysoev October 24, 2011 05:46AM

Re: MP4 + proxy_cache/proxy_store

Maxim Dounin October 24, 2011 05:54AM

Re: MP4 + proxy_cache/proxy_store

Alexander Moskalenko October 24, 2011 06:18AM

Re: MP4 + proxy_cache/proxy_store

Kruglov Eugenie October 24, 2011 05:58AM

Re: MP4 + proxy_cache/proxy_store

Alexander Moskalenko October 24, 2011 06:20AM

Re: MP4 + proxy_cache/proxy_store

Kruglov Eugenie October 24, 2011 07:32AM

Re: MP4 + proxy_cache/proxy_store

Alexander Moskalenko October 25, 2011 10:10AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 140
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready