我是nodejs新手,我正在寻找在我的 Node 应用程序中拥有发布/订阅消息传递的方法,我可以使用它来在模块/包之间进行通信。
正在考虑使用EventEmitter,也许在进程上使用eventEmitter实例,这样它就可以充当全局事件总线。但我只是对这样做有一种不好的预感,我不知道足够的 Node 来提出不这样做的充分理由。
或者有其他方法吗?
这仅在内存中,不能跨多个实例
最佳答案
如果您愿意,可以依赖模块缓存。有些模块这样做是为了在需要时维护状态(例如 Mongoose )。
所以我的意思是,如果您的消息总线模块在内部维护其状态,并且仅导出 pub/sub 函数,那么需要它的任何其他模块将获得相同的“实例”,因此能够 pub/子针对同一 channel 。
关于node.js - Nodejs在内存消息总线中使用EventEmitter进行跨模块通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27257793/