Laravel + Redis: Guia Completo para Cache, Sessões e Filas

Laravel + Redis: Guia Completo para Cache, Sessões e Filas

Se você está construindo aplicações robustas com Laravel e quer extrair o máximo desempenho, integrar o Redis é um passo essencial. Este guia completo mostra como usar Redis para cache, sessões e filas, com exemplos práticos e dicas de otimização.


O que é Redis?

Redis é um banco de dados em memória, altamente performático, usado para armazenar dados temporários, como sessões, filas e cache. Por ser baseado em memória, ele é extremamente rápido, o que o torna ideal para aplicações que exigem alta performance e baixa latência.


Por que usar Redis com Laravel?

Laravel oferece suporte nativo ao Redis, permitindo utilizar seus recursos com configuração mínima. Com ele, você pode:

  • Aumentar a velocidade do carregamento das páginas com cache;
  • Gerenciar sessões de forma escalável;
  • Processar tarefas em segundo plano com filas;
  • Armazenar dados temporários e contadores de forma eficiente.

Como configurar Redis no Laravel

1. Instale o Redis no seu servidor

No Ubuntu, você pode usar:

sudo apt update
sudo apt install redis-server

2. Instale o pacote predis/predis via Composer

Laravel já suporta phpredis, mas caso prefira usar predis, execute:

composer require predis/predis

3. Configure o .env

Adicione ou edite as variáveis de ambiente:

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

Usando Redis como cache no Laravel

Configuração

No arquivo config/cache.php, defina o driver padrão como redis:

'default' => env('CACHE_DRIVER', 'redis'),

Exemplo de uso

// Armazenando no cache
Cache::put('chave', 'valor', now()->addMinutes(10));

// Recuperando do cache
$valor = Cache::get('chave');

Você também pode usar o cache remember:

$dados = Cache::remember('usuarios', now()->addMinutes(5), function () {
    return DB::table('users')->get();
});

Usando Redis para sessões

Configuração

No .env, altere:

SESSION_DRIVER=redis

No config/session.php, o driver deve estar como:

'driver' => env('SESSION_DRIVER', 'redis'),

O Laravel irá armazenar os dados da sessão diretamente no Redis, ideal para aplicações que rodam em múltiplas instâncias (como em containers ou load balancers).


Usando Redis com filas (Queues)

Configuração

No .env:

QUEUE_CONNECTION=redis

No config/queue.php, certifique-se de que o driver redis está configurado corretamente.

Exemplo de job com Redis

php artisan make:job EnviarEmailJob

No job gerado:

public function handle()
{
    Mail::to($this->user->email)->send(new SeuEmail());
}

Para disparar:

EnviarEmailJob::dispatch($user);

Inicie o worker:

php artisan queue:work redis

Monitoramento com Redis CLI

Você pode acessar o monitoramento em tempo real do Redis com:

redis-cli monitor

E listar as chaves armazenadas:

redis-cli keys '*'

Dicas de Boas Práticas

  • Use prefixos personalizados no Redis para evitar conflitos entre ambientes.
  • Defina tempo de expiração (TTL) para dados em cache e sessões.
  • Não use Redis como banco de dados principal — ele é volátil.
  • Monitore o consumo de memória com INFO memory.

Conclusão

A integração entre Laravel e Redis é poderosa, simples e altamente recomendada para aplicações modernas. Ao usar Redis como cache, armazenamento de sessões e filas, você garante mais escalabilidade, performance e confiabilidade para seu sistema.


Quer turbinar sua aplicação Laravel com Redis? Comece agora mesmo a aplicar essas práticas e veja os resultados na performance!

🔥 Construa seus projetos com a melhor infraestrutura e ainda apoie o DevsBrasil!

Na Hostinger, você encontra hospedagem rápida, segura e com suporte top de linha — ideal para desenvolvedores e empreendedores digitais.

💡 Use o nosso link exclusivo do DevsBrasil e garanta:

✅ Descontos especiais nos planos de hospedagem, e-mail profissional, VPS e criador de sites com IA

✅ Ferramentas otimizadas para performance, com ótimo custo-benefício

✅ Apoio direto à nossa comunidade e ao nosso conteúdo gratuito 💚

👉 Acesse agora com nosso link exclusivo e aproveite os benefícios!

Leave a Comment

Comments

No comments yet. Why don’t you start the discussion?

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *