Следует использовать класс или модуль в NodeJS
Это ложный выбор. Вы вполне можете использовать оба. Вы, конечно, хотите использовать модули (на самом деле, было бы очень трудно этого не делать). Вы можете или не можете использовать class
(больше в ответах на этот вопрос ), а если нет, вы можете или не хотите использовать псевдоклассическое наследование; или вы можете предпочесть прямое использование прототипного наследования. Это выбор стиля.
1. Как я знаю, «Модуль» кэшируется после того, как я запускаю один раз ...
Да, модули кэшируются. Вы используете встроенный код модуля для его инициализации. Затем модуль экспортирует функции и / или функции-конструкторы (свободно, «классы») и т. Д., Которые могут использовать другие модули.
2. ... Если одновременно отправляется несколько запросов со стороны клиента, влияет ли это на производительность сервера, например, более медленный ответ или что-то в этом роде?
Создание объектов, в том числе создание объектов с помощью функций конструктора, очень быстро. Беспокойство по поводу функциональности и ремонтопригодности. Беспокойство по поводу производительности, если и когда есть проблема.
3. Если используется «CLASS», могу ли я вызвать ONCE для глобальной функции (любые другие классы наследования не будут вызывать эту функцию).
Вы можете создать один экземпляр класса и экспортировать его из модуля для повторного использования без повторного создания, да.
4. После создания экземпляра класса и обработки функциональности он будет выпущен?
Если ничто не хранит ссылку на объект, этот объект подходит для сборки мусора, да. Естественно, если что-то сохраняет ссылку на объект (например, если вы экспортируете его из модуля), оно не подходит для сборки мусора.