Lors de l'exécution d'une application node.js basée sur Docker, le serveur rencontre un problème de "manque de mémoire" pendant son fonctionnement.
Le moteur v8 de node.js a une limite de mémoire heap par défaut. Il a une limite de capacité de mémoire heap comme suit :
Inférieur à v12 : 1,35 Go
Inférieur à v14 : 2 Go
Supérieur ou égal à v14 : 4 Go
Sans connaître cette limite de mémoire, l'application continuait à utiliser de la mémoire jusqu'à ce que le service se bloque.
L'instance de ce service avait 12 Go de RAM, et lorsqu'une grande quantité de mémoire était utilisée, 4 Go étaient utilisés et il restait plus de 7 Go d'espace libre.
En raison d'une mauvaise compréhension de la structure du service, la mémoire était gaspillée et la disponibilité du service diminuait.