Objetivos de aprendizado
Depois de ler este artigo, você vai conseguir:
- Entender o que compõe o preço de um Redis hospedado
- Medir quanta memória o seu Redis precisa e estimar o custo mensal
- Comparar cobrança por memória, por comando e por instância
Nesta página
- O que compõe o custo de hospedar Redis?
- Quais são os modelos de cobrança?
- Como cobram alguns provedores conhecidos?
- Por comando ou por memória: qual sai mais barato?
- Como estimar a memória do seu Redis?
- Quais são os custos escondidos?
- Como reduzir o custo do Redis?
- Como fazer isso na Square Cloud
- Perguntas frequentes
O Redis guarda todo o conjunto de dados na memória RAM. Isso o deixa rápido e também define a conta: em quase todo provedor, o que você paga acompanha a memória que os dados ocupam, mais o que mantém esses dados seguros e disponíveis. Se você ainda não sabe para que o Redis serve, comece por o que é Redis.
Os preços de terceiros mudam com frequência, por isso os números em dólar deste artigo são hipotéticos, escolhidos para facilitar a conta. Não são preços de nenhum provedor; os valores reais ficam nas páginas oficiais de preços, então troque-os pelos da página do provedor antes de decidir.
O que compõe o custo de hospedar Redis?#
Quase toda conta de Redis se divide nestes itens:
- Memória: o maior item. O conjunto de dados inteiro precisa caber na RAM, mais a sobra para o próprio Redis funcionar.
- Comandos ou tráfego: alguns provedores cobram por comando executado ou por volume de dados lidos e gravados.
- Persistência: gravar em disco (RDB ou AOF) exige disco e, em aplicações com muita escrita, mais RAM durante a gravação.
- Réplicas e alta disponibilidade: uma réplica é outra cópia inteira dos dados em memória.
- Tráfego de rede: aplicação e Redis em redes diferentes podem gerar cobrança de transferência e somam latência a cada comando.
Um cache de 100 MB sem persistência e um Redis de 100 MB com réplica e AOF ligado custam muito diferente, mesmo guardando o mesmo dado.
Quais são os modelos de cobrança?#
- Por memória (plano fixo): você escolhe um tamanho, como 250 MB ou 1 GB, e paga um valor mensal. É o mais previsível.
- Por comando: você paga uma tarifa a cada lote de comandos, mais o armazenamento. É barato com pouco uso e caro quando o tráfego cresce.
- Por instância ou por hora: você aluga um nó com certa RAM e paga as horas ligadas. Um mês tem cerca de 730 horas.
- Servidor próprio: você instala o Redis numa VPS e paga a máquina inteira. Veja quanto custa uma VPS para a faixa de preço; o custo escondido é o seu tempo de manutenção.
Em qualquer modelo, a pergunta é a mesma: quantos MB os seus dados ocupam e quantos comandos por segundo você faz.
Como cobram alguns provedores conhecidos?#
Os modelos acima aparecem assim nas ofertas mais conhecidas:
| Opção | Modelo | O que observar |
|---|---|---|
| Redis Cloud Free | camada sem custo | pouca memória, um banco, ambiente compartilhado |
| Redis Cloud Essentials | plano por memória | faixas de tamanho, ambiente compartilhado |
| Redis Cloud Pro | por hora, com mínimo mensal | ambiente dedicado, vários bancos |
| Upstash Free | camada sem custo | limites de memória, comandos e banda por mês |
| Upstash por uso | por comando | tarifa por lote de comandos, mais armazenamento por GB |
| Upstash Fixed | plano por memória | tamanho fixo, sem cobrança por comando |
| ElastiCache Serverless (Valkey) | por uso | armazenamento por GB-hora mais unidades de processamento (ECPUs), com um mínimo de dados cobrado |
Valores atuais: Redis, Upstash e Amazon ElastiCache. Na AWS, a própria página diz que o Valkey custa menos que o Redis OSS. Para estimar um armazenamento cobrado por GB-hora, como no modo serverless, multiplique os GB cobrados pela tarifa por GB-hora e por 730 horas. Exemplo hipotético: a US$ 0,10 por GB-hora, 1 GB de dados sai por 1 × 0,10 × 730 = US$ 73 por mês só de armazenamento.
Por comando ou por memória: qual sai mais barato?#
Depende do seu volume. Exemplo hipotético: um cache de 500 MB num provedor que cobra por comando, supondo US$ 0,10 por 100 mil comandos e o primeiro GB de armazenamento sem custo:
- Com 3 milhões de comandos por mês: 30 lotes de 100 mil × US$ 0,10 = US$ 3. Os 500 MB cabem no primeiro GB sem custo. Total: US$ 3.
- Com 30 milhões de comandos por mês (cerca de 11 por segundo, em média): 300 × US$ 0,10 = US$ 30.
No segundo caso, um plano fixo de 1 GB a US$ 10 por mês (também hipotético) custa um terço disso. A regra prática: tráfego baixo ou irregular favorece a cobrança por comando; tráfego constante favorece memória fixa. Um bot que consulta o Redis a cada mensagem, ou uma fila com workers fazendo polling, gera comandos o dia todo, mesmo sem usuários.
Como estimar a memória do seu Redis?#
Meça com dados reais. Carregue uma amostra (por exemplo, 10 mil chaves criadas pela sua própria aplicação) e compare a memória antes e depois. O primeiro comando mostra a memória usada, o pico, o limite configurado e a fragmentação; o segundo, os bytes de uma chave específica; o terceiro, as maiores chaves de cada tipo:
redis-cli INFO memory | grep -E '^(used_memory_human|used_memory_peak_human|maxmemory_human|mem_fragmentation_ratio):'
redis-cli MEMORY USAGE sessao:123
redis-cli --bigkeysSuponha que 10 mil chaves somaram 4,5 MB, cerca de 450 bytes por chave. Para 1 milhão de chaves, são uns 450 MB. Agora some as folgas que a documentação do Redis pede:
- Overhead e fragmentação: a página de administração do Redis recomenda definir
maxmemoryabaixo da RAM livre; com 10 GB livres, algo entre 8 e 9 GB. Com 20% de folga, os 450 MB viram cerca de 540 MB. - Persistência com muita escrita: a mesma página avisa que, ao salvar um RDB ou reescrever o AOF, o Redis pode usar até o dobro da memória normal. Se a sua aplicação grava muito, planeje cerca de 1,1 GB.
- Réplica: cada réplica guarda a cópia inteira. Dobre a memória total.
Se for um cache, maxmemory com uma política como allkeys-lru limita o crescimento: ao bater no teto, o Redis remove as chaves menos usadas em vez de crescer, conforme a documentação de remoção de chaves. A diferença entre os dois papéis está em Redis como cache ou como banco.
Quais são os custos escondidos?#
- Licença e versão: desde o Redis 8, o Redis Open Source é distribuído sob RSALv2, SSPLv1 ou AGPLv3, à escolha de quem usa; até a 7.2, era BSD, segundo a página de licenças. O Valkey é a alternativa compatível que muitos provedores passaram a oferecer. Para a maioria das aplicações, a troca é transparente.
- Distância entre aplicação e Redis: cada comando é uma ida e volta pela rede. Um Redis em outra região pode ser barato e mesmo assim deixar a aplicação lenta, além de gerar cobrança de transferência.
- Salto entre planos: passar de 250 MB para 1 GB pode dobrar a conta de uma vez. Expirar chaves antigas com TTL adia esse salto.
- Redis como banco principal: se ele guarda dados que não podem se perder, você precisa de persistência, de cópias fora do servidor e de testes de restauração. Veja como fazer backup de um banco de dados.
- Ambientes extras: staging e produção com Redis separados dobram o item de memória.
Como reduzir o custo do Redis?#
Defina TTL em tudo o que é cache, para a memória não crescer para sempre. Guarde valores compactos: um JSON com nomes de campos longos repetidos em milhões de chaves pesa. Use hashes para agrupar campos pequenos de um mesmo objeto. Não use o Redis como depósito de dados que poderiam ficar num banco em disco; para escolher o motor certo, veja qual banco de dados escolher. E mantenha aplicação e Redis no mesmo datacenter.
Para a conta completa de um banco hospedado, incluindo PostgreSQL, MySQL e MongoDB, leia quanto custa um banco de dados na nuvem.
Como fazer isso na Square Cloud#
A Square Cloud oferece hospedagem de Redis, com persistência, a partir do plano Standard, junto com MongoDB, PostgreSQL e MySQL. O plano Hobby não inclui hospedagem de banco.
Você cria o banco no painel e ele fica pronto em segundos, no mesmo datacenter das aplicações, com latência média de cerca de 1 ms e TLS obrigatório. Cada banco aceita até 512 conexões.
Aqui o preço é o do plano, em reais, sem cobrança por requisição nem por banda (política de uso justo). O Standard começa em R$ 44,99 por mês, com 4 GB de RAM num pool compartilhado entre aplicações e bancos. Um Redis usa no mínimo 512 MB desse pool; a estimativa de memória feita acima diz quanto reservar para ele.
Você tira snapshots manuais quando quiser, e todo plano com bancos inclui também um snapshot automático diário. Você pode restaurar um snapshot no mesmo banco, em outro do mesmo motor ou num banco novo, ou baixá-lo como .zip. Veja os detalhes em hospedagem de Redis.
Hospedagem de bancos
MongoDB, PostgreSQL, MySQL e Redis no mesmo datacenter do app
Perguntas frequentes
Existe Redis hospedado sem custo?
Existem camadas sem custo com limite, como as do Redis Cloud e do Upstash, que restringem a memória e, em alguns casos, os comandos por mês. Servem para estudo e protótipo, não para produção com volume. Confira os limites atuais na página de cada provedor.
Quanta RAM um Redis pequeno precisa?
Meça em vez de chutar: carregue uma amostra de dados, veja o used_memory no comando INFO memory e projete para o volume esperado. Some folga para fragmentação e para os buffers de persistência.
Redis por comando sai mais barato que plano fixo?
Sai quando o tráfego é baixo ou irregular. Com milhões de comandos por dia, a soma por comando costuma passar o preço de um plano de memória fixa. Faça a conta com o seu volume real.
Valkey é mais barato que Redis?
O Valkey é um fork de código aberto do Redis, compatível com os mesmos clientes. Na AWS, a página de preços do ElastiCache lista o Valkey abaixo do Redis OSS; confira a diferença atual lá.
Mais em Bancos de dados
Ver todos os 24 artigos- Quanto custa um banco de dados na nuvem?Um banco de dados na nuvem custa de zero a centenas de dólares por mês. Veja o que define o preço: instância, disco, tráfego, snapshots e como estimar o seu.
- Como hospedar um banco de dados (e conectar sua aplicação)Para hospedar um banco de dados, escolha o motor, crie a instância, guarde a string de conexão em variável de ambiente e teste a conexão. Veja o passo a passo.
- O que é Redis e para que serveRedis é um banco de dados em memória que guarda pares chave-valor e estruturas de dados. Veja como funciona, para que serve e quando não usar.
- Como fazer backup do banco de dados (MySQL, PostgreSQL, MongoDB)Faça backup de MySQL, PostgreSQL e MongoDB com mysqldump, pg_dump e mongodump, e restaure o dump. Veja os comandos, como verificar e os erros comuns.