DLE вміє працювати з Memcache, але в її скриптах є вада, що не дозволяє вказати адресу Memcache у вигляді unix-сокета.
Щоб включити підтримку Memcache в DLE:
engine/modules/functions.php
і знайдіть в ньому такий блок коду:$mcache = false; if ($config['cache_type']) { if (function_exists('memcache_connect')) { $memcache_server = explode(":", $config['memcache_server']); $mcache = @memcache_connect($memcache_server[0], $memcache_server[1]); if ($mcache AND function_exists('memcache_set_compress_threshold')) { memcache_set_compress_threshold($mcache, 20000, 0.2); } } }
$mcache = false; if ($config['cache_type']) { if (function_exists('memcache_connect')) { $memcache_server = explode(":", $config['memcache_server']); if ($memcache_server[0] == 'unix') { $memcache_server = array($config['memcache_server'], 0); } $mcache = @memcache_connect($memcache_server[0], $memcache_server[1]); if ($mcache AND function_exists('memcache_set_compress_threshold')) { memcache_set_compress_threshold($mcache, 20000, 0.2); } } }
unix:///home/example/.system/memcache/socket
, Підставивши замість example
назва хостинг-аккаунта, В якому розміщений сайт.