Requisitos Mínimos de Recursos
Cada projeto hospedado na Plataforma Square Cloud tem requisitos mínimos de recursos específicos para garantir um desempenho ideal:- Bots: Mínimo de 256 MB de RAM requerido.
- Websites: Mínimo de 512 MB de RAM requerido.
- Bancos de Dados de Cache: Mínimo de 512 MB de RAM requerido.
- Bancos de Dados Gerais: Mínimo de 1 GB de RAM requerido.
Por que existem mínimos de RAM?
Containers possuem overhead operacional obrigatório: runtime da linguagem, bibliotecas do sistema operacional e buffers de rede. Abaixo de 256 MB, o OOM Killer do kernel tende a terminar processos durante boot ou garbage collection, tornando a aplicação inviável. Implicações técnicas:- Cada container consome 1 IPv4 dinâmico e IOPS de storage NVMe
- Alocações mínimas previnem fragmentação de recursos (efeito noisy neighbor)
- Fórmula de snapshots diários:
(RAM Total / 256) * 2(aproximado; a quantidade exata por plano pode ser menor nos tiers mais altos)
Dado de Impacto: Após implementarmos o limite mínimo de 256 MB, a estabilidade das aplicações aumentou drasticamente, reduzindo a taxa de crashes por OOM (Out of Memory) em 97,7%.
Alocação de CPU
A CPU é alocada dinamicamente com base na RAM configurada. O algoritmo balanceia performance de inicialização com estabilidade sob carga.Regras de Alocação
Planos de 1 vCPU
Aplicações recebem 100% da capacidade disponível sem throttling.Planos Multicore (≥2 vCPU)
Piso de performance:- Aplicações com ≥512 MB de RAM recebem no mínimo 2 vCPUs
- Hobby (≤2 vCPU): +1 vCPU por 512 MB de RAM
- Standard/Pro/Enterprise: +1 vCPU por 1 GB (1024 MB) de RAM
Exemplos de Alocação
Throttling e Limites de Segurança
O sistema respeita o limite de vCPUs do plano e distribui capacidade proporcionalmente entre aplicações. Elasticidade temporária pode conceder vCPUs extras em picos, mas não é garantida. Uso proibido de CPU:- Mineração de criptomoedas
- Machine learning intensivo sem autorização
- Abusos intencionais de CPU
LACK_OF_CPU e suspensão imediata da aplicação.
Limites de Rede
A largura de banda escala proporcionalmente à RAM alocada: +50 Mbps por 256 MB de RAM.
Para requisitos acima de 2000 Mbps, contate o suporte técnico.
Limites de Armazenamento
Todas as aplicações recebem 10 GB de storage NVMe independente do plano. Características:- Storage de classe empresarial (NVMe).
- Persistente entre deploys e reinícios.
- IOPS e throughput de alta performance.
Status de Limite Excedido
LACK_OF_RAM
Quando ocorre: A aplicação excede a RAM alocada ou o kernel envia sinal de OOM (Out of Memory). Ação do sistema: Terminação imediata do processo para preservar estabilidade do host. Como resolver:- Identifique memory leaks com profilers (Node.js:
--inspect, Python:memory_profiler) - Reduza uso de cache in-memory ou migre para Redis
- Aumente a RAM alocada no painel de controle
LACK_OF_CPU
Quando ocorre: A aplicação ultrapassa o limite de CPU por período sustentado. Ação do sistema: Terminação do processo com statusLACK_OF_CPU.
Como resolver:
- Profile hotspots de CPU (Node.js:
0x, Python:cProfile) - Otimize loops, queries de banco e operações I/O-bound
- Aumente a RAM para obter mais vCPUs (ver tabela de alocação)
- Considere migrar tarefas pesadas para workers assíncronos

