Redis é um poderoso e popular armazenamento de dados na memória usado para armazenar e processar dados temporários em aplicativos da web. Em Laravel, uma das estruturas PHP populares, você pode facilmente usar Redis para lidar com operações de dados com eficiência.
Abaixo estão algumas operações de dados comuns com Redis in Laravel:
Armazenando dados em Redis
Você pode usar a set
função para armazenar um par chave-valor em Redis:
use Illuminate\Support\Facades\Redis;
Redis::set('name', 'John Doe');
Recuperando dados de Redis
Você pode usar a get
função para recuperar um valor com Redis base na chave:
use Illuminate\Support\Facades\Redis;
$name = Redis::get('name'); // Result: "John Doe"
Excluindo dados de Redis
Você pode usar a del
função para excluir uma chave e seu valor correspondente de Redis:
use Illuminate\Support\Facades\Redis;
Redis::del('name');
Verificando a existência de dados em Redis
Você pode usar a exists
função para verificar se existe uma chave em Redis:
use Illuminate\Support\Facades\Redis;
if(Redis::exists('name')) {
// Key exists in Redis
} else {
// Key does not exist in Redis
}
Armazenamento de dados com tempo de vida(TTL)
Você pode usar a setex
função para armazenar um par chave-valor com um tempo de vida(TTL) em Redis:
use Illuminate\Support\Facades\Redis;
Redis::setex('token', 3600, 'abc123'); // Store the key 'token' with value 'abc123' for 1 hour
Armazenando dados como uma lista
Redis suporta o armazenamento de dados como uma lista. Você pode usar funções como lpush
, rpush
, lpop
, rpop
para adicionar e remover elementos da lista:
use Illuminate\Support\Facades\Redis;
Redis::lpush('tasks', 'task1'); // Add 'task1' to the beginning of the list 'tasks'
Redis::rpush('tasks', 'task2'); // Add 'task2' to the end of the list 'tasks'
$task1 = Redis::lpop('tasks'); // Get the first element of the list 'tasks'
$task2 = Redis::rpop('tasks'); // Get the last element of the list 'tasks'
Armazenando dados como um conjunto
Redis também suporta o armazenamento de dados como um conjunto. Você pode usar funções como sadd
, srem
, smembers
para adicionar, remover e recuperar elementos do conjunto:
use Illuminate\Support\Facades\Redis;
Redis::sadd('users', 'user1'); // Add 'user1' to the set 'users'
Redis::sadd('users', 'user2'); // Add 'user2' to the set 'users'
Redis::srem('users', 'user2'); // Remove 'user2' from the set 'users'
$members = Redis::smembers('users'); // Get all elements from the set 'users'
Armazenando dados como um hash
Redis suporta o armazenamento de dados como um hash, onde cada chave é associada a um conjunto de campos e valores. Você pode usar funções como hset
, hget
, hdel
, hgetall
para adicionar, recuperar e remover campos no hash:
use Illuminate\Support\Facades\Redis;
Redis::hset('user:1', 'name', 'John Doe'); // Add the field 'name' with value 'John Doe' to the hash 'user:1'
Redis::hset('user:1', 'email', '[email protected]'); // Add the field 'email' with value '[email protected]' to the hash 'user:1'
$name = Redis::hget('user:1', 'name'); // Get the value of the field 'name' in the hash 'user:1'
Redis::hdel('user:1', 'email'); // Remove the field 'email' from the hash 'user:1'
$fields = Redis::hgetall('user:1'); // Get all fields and values in the hash 'user:1'
Manipulação de operações com base em Transaction
Redis suporta transações para lidar com operações de dados de forma segura e consistente. Você pode usar as funções multi
e exec
para iniciar e terminar um transaction:
use Illuminate\Support\Facades\Redis;
Redis::multi(); // Begin the transaction
Redis::set('name', 'John Doe');
Redis::set('email', '[email protected]');
Redis::exec(); // End the transaction, operations will be executed atomically
Conclusão O uso Redis de in Laravel permite lidar com operações de dados com eficiência e otimizar o desempenho de seu aplicativo. Ao usar operações básicas de dados e recursos avançados do Redis, você pode armazenar e processar dados com eficiência, melhorar o desempenho do aplicativo e aprimorar a experiência do usuário.