大佬教程收集整理的这篇文章主要介绍了在Node.js中的两个不同进程之间进行通信,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
>假设我们有两个Node.js进程运行:example1.js和example2.js。
>在example1.js中有函数func1(input),返回result1作为结果。
>是否有一种方法从example2.js内调用func1(输入)并获得result1作为结果?
从我学到的关于Node.js,我只找到一个使用套接字进行通信的解决方案。这不是理想的,因为它将需要一个进程在端口上侦听。如果可能,我希望避免。
编辑:在一些问题后,我想添加在层次结构example1.js不能是example2.js的子进程,而是相反。如果它有帮助 – 只能有一个example1.js处理自己的数据和许多example2.js的处理自己的数据数据从第一个进程。
另一种方法是使用消息队列,有many good bindings for different message queues。
最简单的方式,我的知识,是使用child_process.fork():
所以,对于你的例子,你可以有example2.js:
var fork = require('child_process').fork; var example1 = fork(__dirname + '/example1.js'); example1.on('message',function(responsE) { console.log(responsE); }); example1.send({func: 'input'});
和example1.js:
function func(input) { process.send('Hello ' + input); } process.on('message',function(m) { func(m); });
以上是大佬教程为你收集整理的在Node.js中的两个不同进程之间进行通信全部内容,希望文章能够帮你解决在Node.js中的两个不同进程之间进行通信所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。