O swap é uma área do disco (ou uma partição/arquivo) usada pelo sistema operacional quando a RAM está cheia. Ele permite que processos continuem rodando mesmo sem memória física disponível suficiente, movendo dados “menos usados” da RAM para o disco.
💡 Resumo simples: swap = “RAM de emergência” no disco.
Quando o Swap Ajuda
- Evita travamentos quando a RAM acaba
- Se a memória RAM encher, sem swap o Linux pode começar a matar processos (
OOM Killer) ou travar. - Swap dá um “respiro” temporário.
- Se a memória RAM encher, sem swap o Linux pode começar a matar processos (
- Permite suspender o sistema (hibernação)
- Para hibernar, o Linux precisa escrever toda a RAM no swap. Sem swap suficiente, a hibernação não funciona.
- Suporte a picos temporários de uso
- Se um programa ocasionalmente consome muita memória, o swap evita falhas, mesmo que seja pouco usado no dia a dia.
- Cenários de RAM limitada
- Servidores ou VPS com pouca memória se beneficiam do swap como buffer para evitar interrupções.
Quando o Swap Atrapalha
- Swap em disco lento
- SSD é melhor, mas HDD deixa o sistema extremamente lento se o swap for usado demais.
- Processos podem “engasgar” porque o acesso ao disco é muito mais lento que RAM.
- Quando a RAM é suficiente
- Se o servidor tem RAM de sobra, swap é raramente usado.
- Um swap grande demais pode mascarar problemas de memória (como vazamentos de RAM) em vez de resolvê-los.
- Performance crítica
- Banco de dados, cache intensivo, ou aplicações de alta performance podem sofrer quando dados importantes são empurrados para swap.
- Sistemas sensíveis a latência devem minimizar o uso de swap.
- Configuração de swappiness alta
- O parâmetro
vm.swappinessdefine a propensão do Linux a usar swap. - Se for alto (ex.: 60–100), o Linux pode mover processos para swap mesmo com RAM disponível, prejudicando performance.
- Para servidores com RAM suficiente,
swappiness=10ou1é geralmente melhor.
- O parâmetro
Resumo prático
| Situação | Swap ajuda? | Swap atrapalha? |
|---|---|---|
| RAM cheia temporariamente | ✅ | ❌ |
| Servidor com RAM suficiente | ⚠️ | ✅ se mal configurado |
| Sistemas de alta performance | ⚠️ | ✅ se usado muito |
| Hibernação/hibernação | ✅ | ❌ |
| SSD rápido vs HDD | ✅ (SSD) | ✅ (HDD lento) pode travar tudo |
💡 Dica profissional:
- Sempre tenha swap, mesmo que pequena (~1–2 GB), para emergências.
- Ajuste
swappinessconforme o uso: servidores de produção geralmente10–20; desktops podem deixar60. - Evite depender do swap como “memória extra constante” — isso indica que você precisa de mais RAM física.
1. Tamanho recomendado de Swap
O tamanho do swap depende de RAM, uso e hibernação:
| RAM no servidor | Uso típico | Tamanho de swap recomendado |
|---|---|---|
| ≤ 2 GB | Servidores leves / VPS simples | 2 GB ou 2×RAM |
| 2–8 GB | VPS padrão | Igual à RAM, máximo 8 GB |
| 8–32 GB | Servidores maiores / apps | 4–8 GB é suficiente, não precisa igual RAM |
| >32 GB | Servidores pesados / DB | 4–8 GB geralmente basta, swap raramente usado |
💡 Regra prática moderna:
Não precisa seguir a velha “2×RAM”. Em servidores atuais com bastante RAM, swap de 4–8 GB já protege contra picos sem degradar performance.
2. Ajustando o Swappiness
swappiness controla a propensão do Linux a usar swap (0–100):
- Valores baixos (1–20): usa swap apenas em emergência, mantém a RAM livre para cache. Ideal para servidores e DB.
- Valores médios (30–60): padrão do Linux, bom para desktops que querem balancear RAM e swap.
- Valores altos (60–100): troca mais cedo para swap, pode degradar performance em servidores.
💡 Configuração recomendada para VPS/servidor:
# Ver valor atual cat /proc/sys/vm/swappiness # Temporário (reinicia ao reboot) sudo sysctl vm.swappiness=10 # Permanente echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf sudo sysctl -p
3. Swap em SSD vs HDD
| Tipo de disco | Observação |
|---|---|
| SSD | Swap rápido, não causa travamento perceptível; ainda assim, não use swap como RAM principal. |
| HDD | Swap lento; se usado frequentemente, o servidor pode “congelar” momentaneamente. Melhor reduzir swappiness (1–10) e aumentar RAM se possível. |
💡 Dica: sempre prefira criar swap em arquivo moderno em vez de partição dedicada, porque é mais flexível e fácil de ajustar:
# Criar swap de 4GB sudo fallocate -l 4G /swapfile sudo chmod 600 /swapfile sudo mkswap /swapfile sudo swapon /swapfile # Tornar permanente echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
4. Monitorando uso de swap
Use os comandos abaixo para saber se o swap está sendo usado demais:
# Uso de memória e swap free -h # Swap detalhado por processo sudo smem -s swap
Se o swap estiver constantemente acima de 50–70%, provavelmente você precisa mais RAM, não só swap.
Resumo prático
- Tamanho: 4–8 GB para a maioria dos VPS modernos.
- Swappiness: 10–20 em servidores; 60 padrão para desktops.
- Disco: SSD = swap seguro; HDD = swap lento, reduzir swappiness.
- Uso: swap é “último recurso”, não substituto de RAM.
FAQ
Sim, pelo menos 4 GB para emergências, mesmo que raramente usado.
É um parâmetro que define quando o Linux vai usar swap em vez de RAM.
Não significativamente; SSDs modernos suportam milhares de ciclos de escrita.
Não. Swap é um “buffer de emergência” e é muito mais lento que RAM.
Diminuindo swappiness e adicionando mais RAM física ao servidor.
Veja Mais:
Qual deve ser o tamanho da sua partição de swap?
Como instalar o servidor de email Mailcow
Diferença entre VPS, servidor dedicado e cloud: quando usar cada um
Otimizar MariaDB em 5 Minutos: Guia Prático do my.cnf em Produção
Otimização de Código vs Servidor: Decisão Prática para Alta Performance
