Безопасно ли полагаться на кэширование модуля Nodejs для единичных случаев - PullRequest
0 голосов
/ 05 апреля 2020

Я использую следующий шаблон, когда мне нужно убедиться, что у меня есть один экземпляр класса:

class DB {    
    constructor() {
        // create db connection
    }
}

const myDB = new DB();
export default myDB;

Так что, даже если я импортирую его несколько других модулей, я получу тот же экземпляр. Это надежная модель? Я знаю, что модуль кэширования поставляется с предупреждением о чувствительности к регистру файлов. Но есть ли крайние случаи, которые могли бы привести к тому, что мой множественный импорт создал несколько db объектов?

Я знаю, что я могу альтернативно создать конкретный синглтон с помощью метода getInstance(), но этот шаблон выглядит проще.

...