O que é Predis e para que serve
\n\nPredis é um cliente completo para trabalhar com Redis (Remote Dictionary Server) na linguagem PHP. Redis é um armazenamento de dados do tipo chave-valor de alto desempenho, frequentemente usado para cache, gerenciamento de sessões, filas de mensagens e tempo real. Predis permite que aplicações PHP interajam com o servidor Redis, enviando comandos e recebendo respostas.
\n\nPor que usar Predis? Ao contrário de outros clientes (como phpredis), Predis é escrito inteiramente em PHP e não requer a instalação de extensões C adicionais. Isso o torna ideal para ambientes onde você não pode controlar a instalação de extensões (por exemplo, em hospedagens compartilhadas). Predis suporta todos os principais recursos do Redis: strings, hashes, listas, conjuntos, transações, Pub/Sub, clusterização e muito mais.
\n\nPrincipais cenários de uso:
\n- \n
- Cache — aceleração do site armazenando dados frequentemente solicitados na memória RAM. \n
- Gerenciamento de sessões — armazenamento de sessões de usuários no Redis para acesso rápido e escalabilidade. \n
- Filas de tarefas — organização de processamento em segundo plano usando listas do Redis. \n
- Classificações e contadores — uso de conjuntos ordenados para construir rankings. \n
- Pub/Sub — implementação de sistemas de troca de mensagens em tempo real. \n
Instalação do Predis
\n\nPredis é distribuído via Composer — o gerenciador de pacotes padrão para PHP. Certifique-se de ter o Composer instalado. Caso contrário, baixe-o em getcomposer.org.
\n\nPara instalar o Predis, execute o comando na raiz do seu projeto:
\n\ncomposer require predis/predis\n\nApós a instalação, uma pasta vendor e o arquivo composer.json serão criados no seu projeto. Para incluir o Predis, use o autoloader do Composer:
require 'vendor/autoload.php';\n\nRequisitos mínimos: PHP 7.2 ou superior. Predis não requer a instalação da extensão Redis para PHP, pois implementa o protocolo Redis em PHP puro.
\n\nInício rápido com exemplo de código
\n\nVamos escrever um script simples que se conecta ao Redis, salva um valor e o lê.
\n\n<?php\nrequire 'vendor/autoload.php';\n\nuse Predis\\Client;\n\n// Cria um cliente Redis (por padrão, conecta-se a localhost:6379)\n$client = new Client();\n\n// Define um valor\n$client->set('greeting', 'Olá, Redis!');\n\n// Obtém o valor\n$value = $client->get('greeting');\necho $value; // Exibirá: Olá, Redis!\n\n// Verifica se a chave existe\nif ($client->exists('greeting')) {\n echo "A chave existe!";\n}\n\n// Remove a chave\n$client->del(['greeting']);\n?>\n\nEste código faz o seguinte:
\n- \n
- Conecta-se ao servidor Redis em localhost (porta 6379). \n
- Salva a string "Olá, Redis!" sob a chave "greeting". \n
- Lê o valor de volta e o exibe. \n
- Verifica a existência da chave. \n
- Remove a chave. \n
Se o Redis estiver rodando em outro host ou porta, passe os parâmetros de conexão:
\n\n$client = new Client([\n 'scheme' => 'tcp',\n 'host' => '192.168.1.100',\n 'port' => 6379,\n]);\n\nPrincipais métodos do Predis
\n\nPredis fornece uma interface conveniente para todos os comandos do Redis. Vamos explorar os 10 métodos mais usados com exemplos detalhados.
\n\n1. set — definindo um valor
\nO que faz: Define um valor para a chave especificada. Se a chave já existir, seu valor é sobrescrito.
\nParâmetros:
\n- \n
$key(string) — nome da chave. \n