Understanding proxy_buffering

Hi
I’m trying to setup a reverse proxy for some private downloads. Here is
our
setup:
3 Storage servers with High capacity but slow HDDs running nginx
1 loadbalancing server with SSD and high internet uplink.
my file sizes are several hundred megabytes (500+ up to 2GB) running
nginx
downloaders are on slow connections with download managers with up to 16
connections for each file

here is what I want to do:
a user sends a request to the SSD server, the ssd server requests the
file
from Slow servers and caches to response to its fast HDD and serving it
to
the client. But If I use the proxy_cache , the file serving has to wait
till
the file has been completly transfered and cache on the SSD disk wich
(if
several files are requested at the same time) results in a slow
connection
and timeout or other errors on the client side. so this is not an
option.

However I think proxy_buffering is answer to my problem, I think this
means
each part of the requested file (defined by ranges header) is cached
independently.

  1. Am I right?
    If I’m right then
  2. how can I tell the nginx, to buffer like 5mb of requested part in
    memory
    (and the excess on the SSD disk) and serve the file to the client until
    the
    client has downloaded the part and then request another 5mb?
    I’m looking for a setting like output_buffers 1 5m; but for the proxied
    file.
  3. Is there a better solution?

Regards

Posted at Nginx Forum:

Hello

One side question. Have you calculated a estimation of the expected life
of
a SSD disk when you are writing on it continously? I suppose that in
such a
situation it will die “quickly”, due to the limited number of writes
that
the memory can support before getting damaged.

Greetings.

Oscar

Hadn’t thought of that
We could still use SAS 15K drives ,anyway even if the ssd thing works
for a
year or two I think the advantage will cover the cost

Posted at Nginx Forum:

One year or two?. I think that is a very optimist estimation.
Extrapolating the information I get from a Windows program I execute in
my
laptop when I install software (it is a moment where you are writing
files
to the disk), I suppose you should expect a very much shorter life for
your
SSD disk. Perhaps anyone in the list have real experience in that
subject…