I
I
instla2018-09-30 00:50:57
PHP
instla, 2018-09-30 00:50:57

Memcache in php refuses to receive data from requests, why?

Given: a server that has 7,000 inserts of memcached records per minute (set).
If you try to extract this data right away, then 5-10% percent is extracted

$memcache_obj->set("11111$rndnum", $play_uni[1][$rrr]."2385942236754".$play_uni[2][$rrr], false, 14000);
$id_d2 = $memcache_obj->get("11111$rndnum");
loger("????? $rndnum ----- $id_d2");

Result: log file contains information like
????? 92245444678481174 ----- 
????? 74244766301724645 ----- 
????? 99933590860933665 ----- 
????? 90245545269794683 ----- 
????? 80779539452917708 ----- 
????? 15259308091664450 ----- 
????? 04532884780488429 ----- 
????? 81288269812162196 ----- 
????? 05829188611602986 ----- 9c834261702bda1fe1cc8d398695318123859422367545094321
????? 88381371446510567 ----- 5483a50ebde98bfec3af4ffc967e970223859422367545329085

Server load: 60-70%
memcached statistics:
[pid] => 30307
            [uptime] => 378028
            [time] => 1538257774
            [version] => 1.4.33
            [libevent] => 2.0.21-stable
            [pointer_size] => 64
            [rusage_user] => 646
            [rusage_system] => 1732.524
            [curr_connections] => 2
            [total_connections] => 7725687
            [connection_structures] => 259
            [reserved_fds] => 20
            [cmd_get] => 9175811
            [cmd_set] => 3321465
            [cmd_flush] => 0
            [cmd_touch] => 0
            [get_hits] => 6497952
            [get_misses] => 2677859
            [get_expired] => 19075
            [get_flushed] => 0
            [delete_misses] => 0
            [delete_hits] => 0
            [incr_misses] => 0
            [incr_hits] => 0
            [decr_misses] => 0
            [decr_hits] => 0
            [cas_misses] => 0
            [cas_hits] => 0
            [cas_badval] => 0
            [touch_hits] => 0
            [touch_misses] => 0
            [auth_cmds] => 0
            [auth_errors] => 0
            [bytes_read] => 5826183726
            [bytes_written] => 18088612253
            [limit_maxbytes] => 32212254720
            [accepting_conns] => 1
            [listen_disabled_num] => 0
            [time_in_listen_disabled_us] => 0
            [threads] => 4
            [conn_yields] => 0
            [hash_power_level] => 21
            [hash_bytes] => 16777216
            [hash_is_expanding] => 0
            [malloc_fails] => 0
            [log_worker_dropped] => 0
            [log_worker_written] => 0
            [log_watcher_skipped] => 0
            [log_watcher_sent] => 0
            [bytes] => 5289097983
            [curr_items] => 2734843
            [total_items] => 3321465
            [expired_unfetched] => 39880
            [evicted_unfetched] => 0
            [evictions] => 0
            [reclaimed] => 52850
            [crawler_reclaimed] => 0
            [crawler_items_checked] => 0
            [lrutail_reflocked] => 0

Answer the question

In order to leave comments, you need to log in

1 answer(s)
A
Anton Shamanov, 2018-10-02
@SilenceOfWinter

Memcache::addServer - check what is passed in the $persistent, $timeout, $retry_interval parameters
Memcache::setCompressThreshold - enable automatic compression for large values.
Memcache::set - use the MEMCACHE_COMPRESSED flag

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question