Me preocupa el aumento de memoria.
Si uso require como se muestra a continuación, ¿la clase crea memoria cada vez?
------------ a.js -------------` class a { constructor(){ } } module.exports = new a(); --------------- const IsMemoryIncrease = require('a');Una vez que se carga un módulo, el sistema lo almacena en caché. Los intentos posteriores de cargar ese módulo nuevamente solo devuelven exactamente el mismo module.exports que se creó anteriormente. El código de inicialización del módulo no se vuelve a ejecutar.
Entonces, en su caso, cada módulo que cargue a.js obtendrá exactamente la misma instancia de la clase a . Solo habrá una instancia.
Ejecuta esto
// b.js const IsMemoryIncrease1 = require('./a'); const IsMemoryIncrease2 = require('./a'); console.log(IsMemoryIncrease1); console.log(IsMemoryIncrease2); console.log(IsMemoryIncrease2 == require('./a'));