2017-03-11 1 views
1

J'utilise Php & Memcache sur Centos 7. Memcache n'a pas de fichier journal mais crée un état de connexion memcache sur mysql.Impossible de connecter Memcached dans un trop grand nombre de visiteurs

$memcache = new Memcache; 
$ip = getenv('REMOTE_ADDR'); 
if(!($memcache->connect('localhost', 11211))){ 
    $date_er= date('Y-m-d H:i:s'); 
    mysql_query("insert into memcacheerror (date_er,ip) values('$date','$ip')") or die(mysql_error()); 
} 

Quand je vérifie la table maintenant, il y a environ 953 connexions qui ne se connectent pas, sur environ 5 heures ..

état Memcache log ->montre « echo statistiques | nc 127.0.0.1 11211 "

STAT pid 12939 
STAT uptime 60708 
STAT time 1489228368 
STAT version 1.4.15 
STAT libevent 2.0.21-stable 
STAT pointer_size 64 
STAT rusage_user 49.208000 
STAT rusage_system 181.028000 
STAT curr_connections 10 
STAT total_connections 1510442 
STAT connection_structures 83 
STAT reserved_fds 20 
STAT cmd_get 2578565 
STAT cmd_set 3716 
STAT cmd_flush 0 
STAT cmd_touch 0 
STAT get_hits 2574844 
STAT get_misses 3721 
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 touch_hits 0 
STAT touch_misses 0 
STAT auth_cmds 0 
STAT auth_errors 0 
STAT bytes_read 76806965 
STAT bytes_written 17519935942 
STAT limit_maxbytes 2147483648 
STAT accepting_conns 1 
STAT listen_disabled_num 0 

fichier de configuration Memcache

PORT="11211" 
USER="memcached" 
MAXCONN="5024" 
CACHESIZE="2048" 
OPTIONS="" 

Comment résoudre ce problème? Quelle est la solution ? Vraiment merci pour l'instant.

Répondre

0

J'ai résolu le problème. Solution augmenter sysctl nf_conntrack_max.

Vérifiez max et la valeur actuelle

cat/proc/sys/net/netfilter/nf_conntrack_max

cat/proc/sys/net/ipv4/netfilter/ip_conntrack_count

dernière, augmenter la valeur nf_conntrack_max .

echo "556546">/proc/sys/net/netfilter/nf_conntrack_max