A Square Cloud implementa limites de recursos baseados em containerização para garantir isolamento, estabilidade e distribuição justa de infraestrutura entre aplicações.Documentation Index
Fetch the complete documentation index at: https://docs.squarecloud.app/llms.txt
Use this file to discover all available pages before exploring further.
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
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
| Plano | RAM Total | RAM Configurada | vCPUs Alocadas |
|---|---|---|---|
| Standard | 4 GB / 4 vCPU | 1 GB | 2 vCPUs (piso mínimo) |
| Standard | 4 GB / 4 vCPU | 4 GB | 4 vCPUs (máximo) |
| Enterprise | 128 GB / 16 vCPU | 2 GB | 2 vCPUs |
| Enterprise | 128 GB / 16 vCPU | 16 GB | 16 vCPUs |
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.| RAM Alocada | Largura de Banda |
|---|---|
| 256 MB | 50 Mbps |
| 512 MB | 100 Mbps |
| 1 GB | 200 Mbps |
| 2 GB | 400 Mbps |
| 4 GB | 800 Mbps |
| 8 GB | 1600 Mbps |
| 10 GB | 2000 Mbps |
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

