Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: proxy cache stampede
Hello!
On Fri, Sep 23, 2011 at 10:34:22AM +0400, Vladimir Stavrinov wrote:
> On Wed, Sep 21, 2011 at 08:06:21PM +0400, Maxim Dounin wrote:
>
> > Решение этой проблемы называется "busy locks" [1], и в настоящий
>
> "busy locks" заставляют клиента ждать. До определённых пределов это
> может быть терпимым, пока можно что то отрегулировать параметрами
> конфигурации. Но на больших файлах большинство клиентов ничего не
> дождутся и либо отвалятся сами, либо вынуждены будут пойти на backend.
> Но тогда всё вернётся на круги своя и станет как есть сейчас.
>
> А вот если бы можно было сразу раздавать клиентам контент прямо из
> временного файла, это было бы полноценными решением.
В какой момент данные от бекенда начинают использоваться - это
вопрос, перпендикулярный busy locks. Если ответ пустой, то
разницы нет никакой вообще: так или иначе нужно ждать, пока бекенд
что-то ответит, а когда он что-то ответил - сразу всё и у всех
есть.
Понятно, что для задачи кеширования больших файлов, когда время
генерации ответа бекендом мало, а время на скачивания ответа с
бекенда - велико, интересно было бы сразу мультиплексировать ответ
всем клиентам. Но это лишь дополнительная оптимизация конкретного
use case'а, проблему в целом, в отличие от busy locks, оно не
решает.
По хорошему нужно и то, и то. Для 2.* это есть в планах, в 1.* -
скорее нет, чем да.
Maxim Dounin
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|