Requisiti minimi di risorse
Ogni progetto ospitato sulla piattaforma Square Cloud ha requisiti minimi di risorse specifici per garantire prestazioni ottimali:- Bot: Minimo di 256 MB di RAM richiesti.
- Siti web: Minimo di 512 MB di RAM richiesti.
- Database cache: Minimo di 512 MB di RAM richiesti.
- Database generali: Minimo di 1 GB di RAM richiesti.
Perché esistono i minimi di RAM?
I container hanno un overhead operativo obbligatorio: runtime del linguaggio, librerie del sistema operativo e buffer di rete. Al di sotto di 256 MB, l’OOM Killer del kernel tende a terminare i processi durante il boot o la garbage collection, rendendo l’applicazione inutilizzabile. Implicazioni tecniche:- Ogni container consuma 1 IPv4 dinamico e IOPS di storage NVMe
- Le allocazioni minime prevengono la frammentazione delle risorse (effetto noisy neighbor)
- Formula degli snapshot giornalieri:
(Total RAM / 256) * 2(approssimativa; l’allocazione esatta per piano potrebbe essere inferiore sui livelli più alti)
Dati sull’impatto: Dopo aver implementato il limite minimo di 256 MB, la stabilità delle applicazioni è aumentata drasticamente, riducendo il tasso di crash dovuti a OOM (Out of Memory) del 97,7%.
Allocazione della CPU
Risposta breve: la CPU viene allocata in base alla RAM configurata. Aumentare la RAM garantisce tipicamente più vCPU.Regole
Piani a vCPU singola
Le applicazioni sui piani a 1 vCPU ricevono la piena capacità senza throttling.Piani multicore (≥2 vCPU)
- Soglia minima di prestazioni: le applicazioni con ≥512 MB di RAM ricevono almeno 2 vCPU.
- Scalabilità proporzionale:
- Hobby (≤2 vCPU): +1 vCPU per 512 MB di RAM
- Standard / Pro / Enterprise: +1 vCPU per 1 GB (1024 MB) di RAM
Esempi
Throttling e limiti di sicurezza
Il sistema applica il limite di vCPU del piano e applica un livellamento per mantenere equa la distribuzione. L’elasticità a breve termine può concedere vCPU aggiuntive durante i picchi, ma non è garantita.
Usi della CPU vietati:
- Mining di criptovalute
- Carichi di lavoro ML intensivi e non limitati senza autorizzazione
- Abuso deliberato delle risorse
LACK_OF_CPU e la sospensione immediata.
Limiti di rete
La banda scala con la RAM: +50 Mbps per ogni 256 MB di RAM.
Per requisiti superiori a 2000 Mbps contatta il supporto.
Limiti di storage
Tutti i progetti ricevono per impostazione predefinita 10 GB di storage NVMe. Caratteristiche:- NVMe di livello enterprise
- Persistente attraverso deploy e riavvii
- IOPS e throughput elevati
Stati di superamento dei limiti
LACK_OF_RAM
Quando: l’applicazione supera la RAM allocata o il kernel segnala un OOM. Azione: il processo viene terminato immediatamente per proteggere la stabilità dell’host. Come risolvere:- Individua i memory leak con i profiler (Node.js:
--inspect, Python:memory_profiler). - Riduci le cache in memoria o spostale su Redis.
- Aumenta la RAM allocata nel pannello di controllo.
LACK_OF_CPU
Quando: l’utilizzo sostenuto della CPU supera i limiti ragionevoli per l’allocazione. Azione: processo terminato con statoLACK_OF_CPU.
Come risolvere:
- Profila gli hotspot della CPU (Node.js:
0x, Python:cProfile). - Ottimizza i loop critici, le query al DB e le operazioni I/O-bound.
- Aumenta la RAM per ottenere più vCPU (vedi la tabella di allocazione della CPU).
- Delega il lavoro pesante a worker asincroni o job batch.

