perl_set $random_id 'sub { int(rand(2)); }';<br><br><div class="gmail_quote">30 ноября 2009 г. 16:30 пользователь Олег Петрачёв <span dir="ltr"><<a href="mailto:cronfy@gmail.com">cronfy@gmail.com</a>></span> написал:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="im">> Есть сервер со статическим контентом, на котором несколько жёстких дисков с одинаковым содержимым, т.е. их содержимое полностью идентично (синхронизируется специальной программой). И мне нужно сбалансировать нагрузку на оба эти диска, чтобы нагрузка была равномерной.<br>
</div><div class="im">> Можно ли как-то это упростить, чтобы не было внутренних proxy запросов, т.к. они всё равно тут лишние, а сделать что-то наподобие этого<br>
> server {<br>
> listen 80;<br>
> server_name <a href="http://img.my_site.com" target="_blank">img.my_site.com</a>;<br>
><br>
> location / {<br>
> root /static/disk$random_value;<br>
> expires 8h;<br>
> }<br>
> }<br>
><br>
> где $random_value при каждом запросе была принимала бы случайное значение, либо 1 либо 2.<br>
<br>
</div>Можно на встроенном перле написать функцию, которая будет возвращать<br>
random (или просто по очереди 1,2,1,2...), и подставлять её в root:<br>
<br>
perl_set $random_disk myPerl::getRandomDisk;<br>
...<br>
root /static/$random_disk/wwwdata/<br>
<font color="#888888"><br>
<br>
--<br>
// cronfy<br>
</font><div><div class="h5">_______________________________________________<br>
nginx-ru mailing list<br>
<a href="mailto:nginx-ru@nginx.org">nginx-ru@nginx.org</a><br>
<a href="http://nginx.org/mailman/listinfo/nginx-ru" target="_blank">http://nginx.org/mailman/listinfo/nginx-ru</a><br>
</div></div></blockquote></div><br>