Praticar de graça

Entenda o Amazon ElastiCache

O ElastiCache é um cache em memória gerenciado (Redis ou Memcached). Ele guarda na RAM o que é caro de buscar, pra a aplicação ler em microssegundos em vez de bater no banco toda hora.

Pra que serve

Acelerar aplicações e aliviar o banco de dados: guardar resultados de consultas pesadas, sessões de usuário, rankings, contadores. É o truque nº 1 pra deixar um site rápido sob carga.

Onde se usa no mundo real

Vocabulário

Redis
o motor mais usado — além de cache, faz listas, contadores, pub/sub.
Memcached
motor mais simples, só chave-valor em memória.
Node
cada máquina do cluster de cache.
Endpoint
o endereço que a aplicação usa pra falar com o cache.
💰 Como cobra: Paga por hora de cada nó ligado (como o EC2). O ganho é indireto: menos carga no banco e páginas mais rápidas.

Comandos que você aprende nesta trilha

Cada um deles roda de verdade no terminal do CLImb, com a mesma saída e as mesmas mensagens de erro que a AWS devolve.

aws elasticache describe-cache-clusters

USO

aws elasticache describe-cache-clusters

aws elasticache create-cache-cluster

USO

aws elasticache create-cache-cluster --cache-cluster-id cache-loja --engine redis --cache-node-type cache.t3.micro --num-cache-nodes 1

aws elasticache create-cache-subnet-group

USO

aws elasticache create-cache-subnet-group --cache-subnet-group-name cache-privado \
--cache-subnet-group-description "Sub-redes privadas" --subnet-ids subnet-aaa1 subnet-bbb2

aws elasticache describe-cache-subnet-groups

USO

aws elasticache describe-cache-subnet-groups

aws elasticache create-replication-group

USO

aws elasticache create-replication-group --replication-group-id cache-loja-ha \
--replication-group-description "Redis com failover" --num-cache-clusters 2

aws elasticache describe-replication-groups

USO

aws elasticache describe-replication-groups

aws elasticache create-snapshot

USO

aws elasticache create-snapshot --snapshot-name backup-cache \
--replication-group-id cache-loja-ha

aws elasticache describe-snapshots

USO

aws elasticache describe-snapshots

aws elasticache describe-events

USO

aws elasticache describe-events --duration 1440

aws elasticache delete-cache-cluster

USO

aws elasticache delete-cache-cluster --cache-cluster-id cache-loja

O que você pratica (10 atividades)

Cada atividade é um pedido de trabalho, do jeito que ele chega no dia a dia — você resolve digitando os comandos, não escolhendo alternativa.

Memória que acelera

O ElastiCache guarda em memória o que é caro de buscar — a app lê do cache em microssegundos em vez de bater no banco toda hora. Liste os clusters de cache.

Suba um Redis

Crie o cache cache-loja com engine redis, tipo cache.t3.micro, 1 nó.

Onde o cache pode morar

Cache não fica solto na internet — ele vive em sub-redes da sua VPC. Crie o subnet group cache-privado com duas sub-redes (subnet-aaa1 e subnet-bbb2). <small>(duas zonas diferentes: cache numa zona só cai junto com ela)</small>

Confira onde o cache pode nascer

Antes de subir qualquer coisa, liste os subnet groups — é assim que se descobre se alguém deixou uma sub-rede pública no meio.

Um cache que não derruba o banco

O cache de um nó só que você subiu é exatamente o que não se coloca em produção: se ele cair, todo o tráfego vai pro banco de uma vez. Crie o replication group cache-loja-ha com 2 nós — primário e réplica, com failover automático.

O failover está mesmo ligado?

Achar que tem réplica e não ter é pior do que não ter. Confirme o estado do grupo e do failover automático.

Cache que sobe vazio derruba o banco

Cache é memória: reiniciar sem backup significa subir vazio, e aí todo o tráfego bate no banco até reaquecer. Faça um snapshot chamado backup-cache-loja do grupo cache-loja-ha.

Quando foi o último backup?

A pergunta que ninguém faz antes do acidente. Liste os snapshots e veja quando foram feitos.

O que aconteceu de madrugada

O sistema ficou lento às 3 da manhã e ninguém mexeu em nada. Veja os eventos do serviço na janela das últimas 24 horas — failover, nó substituído e manutenção aparecem aqui. <small>(cuidado: a duração conta em MINUTOS, e sem a flag o padrão são só 60 — a madrugada ficaria de fora)</small>

Desligue o cache

Apague o cluster cache-loja.

Continue por aqui

Ler explica. Digitar fixa. No CLImb você roda os comandos de verdade num terminal AWS simulado — o estado persiste entre eles, como na nuvem real.

As 3 primeiras atividades desta trilha são abertas; o resto faz parte do plano Pro.

Começar — 3 atividades grátis
Todas as lições · Praticar no terminal · Sobre