Memcached, keine get_hits

Memcached, keine get_hits

Ich habe ein Problem mit Memcached auf Centos 6 mit Apache auf Port 8080 und Nginx auf Port 80 als Reverse-Proxy für Apache. Ich installiere Memcached, um alle statischen Dateien zwischenzuspeichern: Hier ist meine Memcached-Konfiguration für Nginx:

server {
access_log off;
error_log  logs/vhost-error_log warn;
listen    80;
server_name  xxx.com www.xxx.com;


location ~* ^.+.   (js|css|jpg|jpeg|png|gif|gz|tgz|bz2|tbz|mp3|ogg|swf|pdf|ico|zip|rar|iso|doc|xls|exe|ppt|txt|tar|mid|midi|wav|bmp|rtf|ogv|flv|mpeg|mpg|mpeg4|mp4|avi|wmv|docx|xlsx|pptx|3gp|7z|acc|gzip|img|m4a|m4v|mkv|mov|msi|chm|rm|w3g|w3x|log|dll)$ {
            root /home/xxx/domains/xxx.com/public_html;

            expires      max;
            set $memcached_key $uri;
            memcached_pass     127.0.0.1:11211;
            error_page  404 = @apache;
            access_log  /var/log/httpd/domains/xxx.com.log;
            log_not_found  off;
    }

Memcached hört zu, aber es gibt keine etablierte Sitzung, obwohl ich die Site viele Male durchsucht habe.

Every 2.0s: netstat -natp |grep :11211                                                                                         Mon Mar  2 13:50:47 2015

tcp        0      0 127.0.0.1:11211             0.0.0.0:*                   LISTEN      10504/memcached
tcp        0      0 127.0.0.1:38126             127.0.0.1:11211             TIME_WAIT   -
tcp        0      0 127.0.0.1:38124             127.0.0.1:11211             TIME_WAIT   -
tcp        0      0 127.0.0.1:38144             127.0.0.1:11211             TIME_WAIT   -
tcp        0      0 127.0.0.1:38127             127.0.0.1:11211             TIME_WAIT   -
.....

Hier ist die Memcached-Statistik:

STAT pid 10504
STAT uptime 469 
STAT time 1425279094
STAT version 1.4.4
STAT pointer_size 64
STAT rusage_user 0.023996
STAT rusage_system 0.067989
STAT curr_connections 5
STAT total_connections 383 
STAT connection_structures 6
STAT cmd_get 145 
STAT cmd_set 0   
STAT cmd_flush 0
STAT get_hits 0
STAT get_misses 145 
STAT delete_misses 0
STAT delete_hits 0
STAT incr_misses 0
STAT incr_hits 0
STAT decr_misses 0
STAT decr_hits 0
STAT cas_misses 0
STAT cas_hits 0
STAT cas_badval 0
STAT auth_cmds 0
STAT auth_errors 0
STAT bytes_read 10726    
STAT bytes_written 181940 
STAT limit_maxbytes 1073741824
STAT accepting_conns 1
 STAT listen_disabled_num 0
STAT threads 4
STAT conn_yields 0 
STAT bytes 0        
STAT curr_items 0   
STAT total_items 0   
STAT evictions 0

Es gibt keine get_hit-Nummer, während get_miss wächst. Bitte helfen Sie mir herauszufinden, was los ist. Danke

Antwort1

Nun, Ihr Memcached-Server enthält keine Daten ( STAT total_items 0).
Daher hat nginx versucht, 145 Elemente nachzuschlagen, konnte aber keines davon finden.

Das ist völlig richtig.
Nginx speichert mit dieser Konfiguration nichts im Memcached (eigentlich glaube ich nicht, dass es das kann, nur mit einem nicht standardmäßigen Modul:https://github.com/bpaquet/ngx_http_enhanced_memcached_module).
Sie müssen also einen Prozess finden, der Daten in Memcached speichert.

verwandte Informationen