Кеш на файлах не медленней memcached.
Нужда в memcached отпадает, если Вам нужен локальный (не распределённый) кеш размером не более свободной оперативки.
Кешеруем простой массив:
Кеш на файлах я сделал так:
Считаем время получения данных из кеша (10.000 итераций).
file: 4.05 секунд
memcache: 4.07 секунд
Кто всё ещё думает, что файлы это медленно и их скорость зависит от скорости диска, почитайте о Page cache.
Нужда в memcached отпадает, если Вам нужен локальный (не распределённый) кеш размером не более свободной оперативки.
Кешеруем простой массив:
$array = array();
for ($i = 0; $i < 1000; $i++) {
$array []= sha1($i);
}
echo strlen(serialize($array)); // 53899
Кеш на файлах я сделал так:
file_put_contents($file, serialize(array($expire, $array)), LOCK_EX);
И проверка $expire < time()
при каждом получении.Считаем время получения данных из кеша (10.000 итераций).
file: 4.05 секунд
memcache: 4.07 секунд
Кто всё ещё думает, что файлы это медленно и их скорость зависит от скорости диска, почитайте о Page cache.