<html dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" id="owaParaStyle"></style><style type="text/css"></style><style type="text/css"><!----></style>
</head>
<body fpstyle="1" ocsi="0">
<div style="direction: ltr;font-family: Tahoma;color: #000000;font-size: 10pt;">Hi,
<div><br>
</div>
<div>I have been reading up on the nginx documentation and also stackoverflow about creating an Anycast CDN based on nginx-frontends.</div>
<div><br>
</div>
<div>We currently use nginx on the backend, and Squid for caching images and mp4's - however Squid is incredibly difficult to cache the mp4's as it cant handle the moov atom's, and thus is always just proxying direct from our servers.</div>
<div><br>
</div>
<div>We've read that an nginx proxy "store" can actually store content locally - but how is that store defined and managed ?</div>
<div><br>
</div>
<div>For example, we have 6 CDN endpoints around the world, each with 200G of SSD space, so ideally we'd like nginx to cache around 50-70G of videos (out of a total of 1.2TB on the backend). Here is our basic config:</div>
<div><br>
</div>
<div>
<div>server {</div>
<div>        listen x.x.x.x:80;</div>
<div>        server_name  cdn.blah.com;</div>
<div><br>
</div>
<div>  location ~ \.mp4$ {</div>
<div>    mp4;</div>
<div>    proxy_pass http://origin;</div>
<div>        proxy_store /cache/videocdn/$request_uri;</div>
<div>        proxy_store_access user:rw group:rw all:r;</div>
<div>        proxy_temp_path /cache/nginx;</div>
<div><br>
</div>
<div>  }</div>
<div>}</div>
</div>
<div><br>
</div>
<div>The first question I have is - how do we limit how much this above configuration will hold ? Do we need to manually run a bash script that checks for old mp4's based on access time and purge ?</div>
<div><br>
</div>
<div>The final question is, how can we have all requests to initially check the local cache for content ? In the same way on this request was asked <a href="http://forum.nginx.org/read.php?2,11284,11284" target="_blank" style="font-size: 10pt;">http://forum.nginx.org/read.php?2,11284,11284</a> Maxim
 advised its possible to return "X-Accel-Redirect" to the file in the store. We would also want this for in-progress caching attempts, for example if I requested cdn.blah.com/1.mp4 on a 2nd machine, before the first machine's request for the same file has had
 a chance to fully cache in the store.</div>
<div><br>
</div>
<div>Thanks in advance for any assistance!</div>
<div><br>
</div>
<div>Regards,</div>
<div><br>
</div>
<div>Greg</div>
</div>
</body>
</html>