Redis
 sql >> Base de Dados >  >> NoSQL >> Redis

Como o Redis saberia se precisa retornar dados em cache ou dados novos do banco de dados


O Redis não tem ideia se os dados no banco de dados foram atualizados.

Normalmente, usamos o Redis para armazenar dados em cache da seguinte forma:
  1. O cliente verifica se os dados, por exemplo, par chave-valor existe no Redis.
  2. Se a chave existir, o cliente obtém o valor correspondente do Redis.
  3. Caso contrário, ele obtém dados do banco de dados e os define como Redis. O cliente também define uma expiração, digamos 5 minutos, para o par de valores-chave no Redis.
  4. As solicitações subsequentes da mesma chave serão atendidas pelo Redis. Embora os dados no Redis possam estar desatualizados.
  5. No entanto, após 5 minutos, essa chave será removida do Redis automaticamente.
  6. Vá para a etapa 1.

Portanto, para manter seus dados atualizados no Redis, você pode definir um tempo de expiração curto. No entanto, seu banco de dados precisa atender a muitas solicitações.

Se você quiser diminuir amplamente as solicitações para o banco de dados, poderá definir um tempo de expiração grande. Para que, na maioria das vezes, o Redis possa atender as solicitações com possíveis dados desatualizados.

Você deve considerar cuidadosamente a relação entre desempenho e dados desatualizados.