Igor Sysoev is at
Wed Mar 25 20:16:47 MSK 2009

On Tue, Mar 24, 2009 at 07:22:03PM +0100, J?r?me Loyet wrote:

> >> Other question, how can I determine the maximum number of cache entrie
> >> I have with a particular conf ?
> >>
> >> proxy_cache_path  /data/nginx/cache  keys_zone=one:10m;
> >>
> >> What is the size of keys on shared mem (X bytes). So that I can
> >> extrapole the maximum number N of cache entries with YMo of shared
> >> memory (N = (Y x 1024 x 1024) / X). (if there is nothing elese in the
> >> shared mem and if the key size is constant)
> >
> > The key size is 128 bytes.
> Thanks for the answer.
> Is there a way to know the effective used size in the SHM segement ?

No, if shared memory is overflowed you will see in error_log the message:
"ngx_slab_alloc(): failed". The problem is that currently no way to see
what memory zone is overflowed: no name and subsystem (proxy cache,
ssl_session_cache, limit requests, etc.) I'm going to fix this.

> Another question about proxy_cache_valid. Let say I set it to 10m. I
> do some hits and the requests are cached well. Now I update my conf
> and set proxy_cache_valid to 30s and send a HUP signal to nginx. How
> is already cached files timeout handled at restart or reload ?
> Is the cache going to be mark as stale 30s after ?
> Is the cache going to stay in the cache until its 10m timeout is
> reached (and then be recached with a 30s timeout) ?

The second. The valid time is stored in both memory and file as
now + proxy_cache_valid. Therefore, a response will be valid
for 10m after its creation, and then will be recached for 30s.

Igor Sysoev

More information about the nginx mailing list