Cache

Cache

Sistema de cache multi-driver com suporte a file, Redis e Memcached.

Factory (Recomendado)

use Blumiga\cache\Cache;

$cache = cache::factory('file');
$cache = cache::factory('redis');
$cache = cache::factory('memcached');

Operações Básicas

// Salvar
$cache->save('chave', $data, 3600); // TTL em segundos

// Ler
$data = $cache->get('chave', 'default');

// Remover
$cache->delete('chave');

// Limpar tudo
$cache->flush();

Page Cache

$cache->pageStart('pagina_id', 60);
// ... conteúdo da página ...
$cache->pageEnd();

Tags

$cache->save('chave', $data, 3600, ['tag1', 'tag2']);
$cache->flushTags(['tag1']);

Locks Atômicos

if ($cache->lock('processamento', 30)) {
    // operação exclusiva
    $cache->unlock('processamento');
}

Facade

use Blumiga\cache\Facade;

$value = Facade::remember('chave', 3600, function () {
    return 'valor caro de gerar';
});

Driver por Ambiente

// Define via variável de ambiente
$_ENV['CACHE_DRIVER'] = 'redis';

// Factory usará o driver configurado
$cache = cache::factory();