Ruby: Redis

Ligue Ruby e Ruby on Rails ao Redis para cache rápido e processamento de tarefas em background

👋 Bem-vindo à documentação da Stackhero!

A Stackhero disponibiliza uma solução Ruby cloud pronta a usar, que oferece várias vantagens, incluindo:

  • Implemente a sua aplicação em segundos com um simples git push.
  • Utilize o seu próprio nome de domínio e beneficie da configuração automática de certificados HTTPS para maior segurança.
  • Desfrute de backups automáticos, atualizações com um clique e uma estrutura de preços simples, transparente e previsível.
  • Obtenha performance otimizada e segurança reforçada graças a uma infraestrutura privada e dedicada.

Poupe tempo e simplifique a sua vida: bastam 5 minutos para experimentar a solução de Ruby cloud hosting da Stackhero!

Redis (Remote Dictionary Server) é uma base de dados em memória concebida para oferecer velocidade e eficiência em grande escala. Os seus principais pontos fortes — elevado throughput, baixa latência e estruturas de dados versáteis — tornam-no uma ferramenta de eleição para cache, análises em tempo real, sistemas de mensagens e muito mais.

Redis é distribuído sob a licença GNU AGPLv3. Se procura uma alternativa com licença permissiva, Valkey é um fork comunitário do Redis sob licença BSD. É amplamente adotado por grandes organizações e também está disponível na Stackhero.

O Redis suporta vários tipos de dados, incluindo strings, hashes, listas, sets e sorted sets. O seu desempenho com grandes volumes de dados e operações em tempo real torna-o especialmente útil para programadores Ruby e Ruby on Rails que pretendem aumentar a velocidade, escalabilidade e fiabilidade das suas aplicações.

Com o Redis, pode adicionar funcionalidades como:

  1. Cache: Utilize o Redis como cache store no Rails para reduzir consultas à base de dados e acelerar os tempos de resposta.
  2. Processamento de tarefas em background: Implemente filas de tarefas com bibliotecas como Sidekiq e Resque, usando o Redis como backend para uma execução fiável e eficiente de tarefas em background.
  3. Funcionalidades em tempo real: Desenvolva funcionalidades como notificações, sistemas de chat ou análises em tempo real com o Redis Pub/Sub, que permite uma entrega rápida de mensagens entre componentes.

A Stackhero disponibiliza um serviço Redis cloud pronto a usar, com funcionalidades pensadas para lhe poupar tempo:

  • Interface web Redis Commander integrada para gestão fácil dos dados.
  • Sem limites de tamanho de mensagem ou volume de transferência.
  • Atualizações com um clique sem interrupções.
  • Performance consistente e segurança reforçada graças a uma infraestrutura privada dedicada.

Pode começar rapidamente: o deployment e a configuração demoram apenas alguns minutos com o Redis cloud hosting da Stackhero.

Para integrar o cache Redis, adicione a gem redis ao seu projeto:

bundle add redis

Depois, atualize o ficheiro config/environments/production.rb:

config.cache_store = :redis_cache_store, { url: ENV["REDIS_URL"] }

Defina a variável de ambiente REDIS_URL. Substitua <yourPassword> e <XXXXXX> pelas suas credenciais reais:

REDIS_URL="rediss://default:<yourPassword>@<XXXXXX>.stackhero-network.com:6380"

Para mais detalhes e opções avançadas, consulte a documentação oficial de cache do Rails.

O Sidekiq utiliza automaticamente o servidor Redis especificado na variável de ambiente REDIS_URL. Defina-a da seguinte forma, atualizando <yourPassword> e <XXXXXX>:

REDIS_URL="rediss://default:<yourPassword>@<XXXXXX>.stackhero-network.com:6380"

Para mais informações, consulte a documentação do Sidekiq sobre utilização do Redis.

O Resque também lê o servidor Redis a partir da variável de ambiente REDIS_URL. Defina-a conforme abaixo, substituindo <yourPassword> e <XXXXXX>:

REDIS_URL="rediss://default:<yourPassword>@<XXXXXX>.stackhero-network.com:6380"

Para mais informações sobre a utilização do Redis com o Resque, consulte a documentação oficial do Resque.