Exigences minimales de ressources
Chaque projet hébergé sur la plateforme Square Cloud a des exigences minimales de ressources spécifiques pour garantir des performances optimales :- Bots : Minimum de 256 Mo de RAM requis.
- Sites web : Minimum de 512 Mo de RAM requis.
- Bases de données de cache : Minimum de 512 Mo de RAM requis.
- Bases de données générales : Minimum de 1 Go de RAM requis.
Pourquoi des minimums de RAM existent-ils ?
Les conteneurs ont une surcharge opérationnelle obligatoire : runtime du langage, bibliothèques de l’OS et tampons réseau. En dessous de 256 Mo, l’OOM Killer du noyau a tendance à interrompre les processus au démarrage ou pendant le ramasse-miettes, rendant l’application inviable. Implications techniques :- Chaque conteneur consomme 1 IPv4 dynamique et des IOPS de stockage NVMe
- Les allocations minimales évitent la fragmentation des ressources (effet « noisy neighbor »)
- Formule des snapshots quotidiens :
(Total RAM / 256) * 2(approximatif ; le quota exact par plan peut être inférieur sur les niveaux supérieurs)
Données d’impact : Après la mise en place de la limite minimale de 256 Mo, la stabilité des applications a considérablement augmenté, réduisant le taux de crash dû à l’OOM (Out of Memory) de 97,7 %.
Allocation CPU
Réponse courte : le CPU est alloué en fonction de la RAM configurée. Augmenter la RAM accorde généralement davantage de vCPU.Règles
Plans à vCPU unique
Les applications sur les plans à 1 vCPU reçoivent la pleine capacité sans throttling.Plans multicœurs (≥2 vCPU)
- Plancher de performance : les applications avec ≥512 Mo de RAM reçoivent au moins 2 vCPU.
- Mise à l’échelle proportionnelle :
- Hobby (≤2 vCPU) : +1 vCPU par 512 Mo de RAM
- Standard / Pro / Enterprise : +1 vCPU par 1 Go (1024 Mo) de RAM
Exemples
Throttling et limites de sécurité
Le système applique la limite de vCPU du plan et procède à un nivellement pour maintenir une répartition équitable. Une élasticité à court terme peut accorder des vCPU supplémentaires lors des pics, mais elle n’est pas garantie.
Utilisations CPU interdites :
- Minage de cryptomonnaies
- Charges de travail ML intensives et non restreintes sans autorisation
- Abus délibéré des ressources
LACK_OF_CPU et une suspension immédiate.
Limites réseau
La bande passante évolue avec la RAM : +50 Mbps par 256 Mo de RAM.
Pour des besoins supérieurs à 2000 Mbps, contactez le support.
Limites de stockage
Tous les projets reçoivent 10 Go de stockage NVMe par défaut. Caractéristiques :- NVMe de qualité entreprise
- Persistant à travers les déploiements et les redémarrages
- IOPS et débit élevés
Statuts de dépassement de limite
LACK_OF_RAM
Quand : l’application dépasse la RAM allouée ou le noyau signale un OOM. Action : le processus est interrompu immédiatement pour protéger la stabilité de l’hôte. Comment corriger :- Identifiez les fuites de mémoire avec des profilers (Node.js :
--inspect, Python :memory_profiler). - Réduisez les caches en mémoire ou déplacez-les vers Redis.
- Augmentez la RAM allouée dans le panneau de contrôle.
LACK_OF_CPU
Quand : une utilisation CPU soutenue dépasse les limites raisonnables pour l’allocation. Action : le processus est interrompu avec le statutLACK_OF_CPU.
Comment corriger :
- Profilez les points chauds CPU (Node.js :
0x, Python :cProfile). - Optimisez les boucles chaudes, les requêtes en base de données et les opérations liées aux I/O.
- Augmentez la RAM pour obtenir davantage de vCPU (voir le tableau d’allocation CPU).
- Déchargez le travail lourd vers des workers asynchrones ou des jobs par lots.

