Welcome! Log In Create A New Profile

Advanced

Re: ngx_slab_alloc() failed: no memory in cache keys zone

Nick Urbanik
September 18, 2017 09:18PM
Dear Folks,

On 19/09/17 10:46 +1000, Nick Urbanik wrote:
>We have this message repeatedly, despite increasing keys_zone size by
>a factor of three to:
>
>proxy_cache_path /srv/mycache levels=1:2 keys_zone=myzone:150m inactive=15d;
>
>This caused the errors to stop for three or four hours and then back
>again.
>
>The cache itself is quite big:
>sudo du -s /srv/mycache
>1826303379 /srv/mycache
>
>and we have many messages like this in our logs:
>unlink() "/srv/mycache/c/fc/4e8755ecadf5a82ec7208c16d8ddbfcc" failed (2: No such file or directory)
>
>Any suggestions most welcome.

I omitted important details:
$ rpm -q nginx
nginx-1.6.2-1.el6.ngx.x86_64

nginx.conf:
$ sanitise-nginx /etc/nginx/nginx.conf
user nginx;
worker_processes 8;
worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000;

error_log /var/log/nginx/error.log;

pid /var/run/nginx.pid;

events {
worker_connections 4096;
}

http {
include /etc/nginx/mime.types;
default_type application/octet-stream;

log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $request_time $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for" $sent_http_content_type '
'CACHE KEY(s/ph/u) => $scheme $proxy_host $uri -> REQUEST_URI: $request_uri '
'UPSTREAM => $upstream_cache_status $upstream_status $upstream_addr';

access_log /var/log/nginx/access.log main;

sendfile on;

keepalive_timeout 65;

proxy_buffering on; # default
proxy_cache_path /srv/mycache levels=1:2 keys_zone=mycache:150m inactive=15d;
proxy_temp_path /srv/mycache_tmp/my.server;
proxy_cache_key $scheme$proxy_host$uri;
proxy_max_temp_file_size 4096m;
proxy_connect_timeout 5s; # how long before upstream dead
proxy_next_upstream error timeout invalid_header; # default
proxy_buffers 10 1M;

upstream mycache_origin {
server my.origin.com:80 max_fails=1 fail_timeout=180;
}

include /etc/nginx/conf.d/acl.conf;
include /etc/nginx/conf.d/default.conf;
}

I reduced the time
proxy_cache_valid 200 90d
by half from 180d:

$ sanitise-nginx /etc/nginx/conf.d/default.conf
server {
listen 80 default_server;
server_name my.server.name.com;

location /server-status {
access_log off;
stub_status on;
}

set $range $http_range;
if ($range = "bytes=0-") {
set $range "";
}

location / {
proxy_cache mycache; # cache keys db
proxy_cache_valid 200 90d; # http 200
proxy_cache_valid 404 1m; # http 404
proxy_cache_valid any 10m; # any other

proxy_ignore_headers "Cache-Control";
proxy_ignore_headers "Expires";

proxy_set_header Host my.origin.com;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upstream $upstream_cache_status;
proxy_set_header Range $range;

proxy_no_cache 0; # do cache
proxy_cache_bypass 0; # take from cache first
proxy_pass http://mycache_origin;
}

error_page 404 /404.html;
location = /404.html {
access_log off;
root /usr/share/nginx/html;
}

error_page 500 502 503 504 /50x.html;
location = /50x.html {
access_log off;
root /usr/share/nginx/html;
}
}

If any other details would help, please let me know.
--
Nick Urbanik http://nicku.org 808-71011 nick.urbanik@optusnet.com.au
GPG: 7FFA CDC7 5A77 0558 DC7A 790A 16DF EC5B BB9D 2C24 ID: BB9D2C24
I disclaim, therefore I am.
_______________________________________________
nginx mailing list
nginx@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx
Subject Author Posted

ngx_slab_alloc() failed: no memory in cache keys zone

Nick Urbanik September 18, 2017 08:48PM

Re: ngx_slab_alloc() failed: no memory in cache keys zone

Nick Urbanik September 18, 2017 09:18PM

Re: ngx_slab_alloc() failed: no memory in cache keys zone

Nick Urbanik September 20, 2017 07:36PM

Re: ngx_slab_alloc() failed: no memory in cache keys zone

pbooth September 20, 2017 07:52PM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 303
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready