Какой лучший подход для прослушивания/запуска событий в node.js? Я тестировал запуск и прослушивание событий в node.js, расширяя модель с помощью EventEmitter, и мне интересно, имеет ли смысл этот подход, поскольку события прослушиваются только тогда, когда есть экземпляр модели. Как можно добиться того, чтобы события прослушивались, пока приложение узла живо?
Пример расширения модели с помощью eventEmitter.
// myModel.js
var util = require('util');
var events2 = require('events').EventEmitter;
var MyModel = function() {
events2.call(this);
// Create a event listener
this.on('myEvent', function(value) {
console.log('hi!');
});
};
MyModel.prototype.dummyFunction = function(params) {
// just a dummy function.
}
util.inherits(MyModel, events2);
module.exports = MyModel;
РЕДАКТИРОВАТЬ: Более четкий вопрос по этому поводу: как сохранить постоянный процесс, который прослушивает события во время выполнения приложения и имеет глобальную область (что-то вроде работающего диспетчера событий, который прослушивает события, созданные в приложении). Было бы решением потребовать файл myModel.js в app.js? Как такие вещи решаются в node.js?