Tag: ipc

PHP进程间通信监视消息队列

我正在制作一个项目,在这个项目中,我为一个排行榜和其他几个位置创build了统计数据。 我的目标是尽可能实时地实现,所以为此我实现了一个用于消息队列的RabbitMQ服务器。 在前端,我有一个nodejs设置,将信息提供给正在观看的客户端。 在同一台服务器上,我有一个PHP进程来侦听队列并将消息logging到数据库中以获取历史logging。 我现在想要解决的是如何在不触及数据库的情况下在nodejs系统和该PHP进程之间进行通信。

Node.js的状态进程间通信

我可能会错过一个显而易见的诡计,但是… 无论如何,2+ node.js过程以有状态的方式交换消息? 例如:进程A是一个HTTP服务器,它传入外部http请求的字段,以满足从进程B或C获取信息所需的这些请求。目前,我有'A'为每个请求打开一个TCP / IP连接' B“或”C“,它们正在合适的端口上收听。 由于每个请求都需要大量的开销来打开套接字并closures套接字,而不是每个请求都打开一个套接字,所以这看起来非常糟糕,而且开销很大。我看不到一种方法来确保从“B”或“C '绑定到正确的HTTP响应。 所有进程都在nodejs中,B + C启动时间很长(30+秒),因此每个请求产生它们不是一个选项。 所有进程当前都在同一个机器上运行(双核)。 就协议而言,我使用的是基本的“ networking ”服务器,如nodejs文档中所述,并在文档中投掷文本。 任何build议等欣然接受

节点和C应用程序之间的进程间通信

我有两个软件组件,我想互相交谈, 一个node.js web应用程序 一个用C编写的专用服务器(一个相当简单的代码片段,用于处理一些不太熟悉的库,我不想为其他语言包装) 我想要的对话很简单, 节点:安装资源ID A C的应用程序:好的,这是参考编号 要么 节点:拿下这个参考 C应用程序:当然,伙计。 有没有在2之间传递消息的无痛方式? 我现在的理论主张是这样的: 在两个进程之间有1个tcp / unix套接字,每次只有一个会话,以避免总是打开和closures会话(同时也担心会有太多的一次)。 每个匹配的节点请求和C应用程序响应都具有相同的ID(单个TCP会话上的tcp-esque会话) 每个相关的节点请求都会向C应用程序生成消息,并将响应对象存储在某个散列中,会话ID作为键。 有一个单一节点线程来收集C应用程序回复,通过会话ID查找响应对象并响应客户端 这是非常低效的吗? 节点中是否有实际的线程支持? (一个简短的谷歌没有提出任何具体的结果)

节点服务器GUI前端

那么,我们都知道无头服务器。 其实,可能绝大多数服务器都是无头的。 像往常一样(看来),我的情况还要求别的东西。 基本上,build议的架构看起来或多或less像: 应用程序服务器(node.js)位于与两个屏幕物理连接的物理机器上。 在这台机器和networking之间有各种常规的networking层。 请记住,这种设置的主要原因之一是物理可移植性:即客户端获得必要的硬件作为产品。 服务器本身依靠CDN来处理静态文件等 每个监视器/屏幕需要显示与由相同节点服务器生成的不同内容。 现在这个服务器可能会在Windows上运行,但是给定一个概念(这是我的问题之后),我可以改变代码在目标平台上运行。 那么,根据我的代码,这甚至可以自动完成。 所以,我的实际问题。 节点是非常灵活的,它可以运行任何东西 – 甚至是定制软件(C ++,Delphi,甚至是GM)。 只是shell_exec('node server.js') ,我们离开了。 但是屏幕本身需要非常活跃。 所以节点需要以某种方式影响两个屏幕。 我正在考虑的几个选项: 一个自定义的应用程序创build两个可调整的,无特征的窗口与embedded铬浏览器由节点服务器控制某种方式(节点如何反应与这些浏览器?) 一个定制的应用程序,根据节点CLI输出,更新两个屏幕的用户界面。 由于我需要用户界面华丽的东西,这个应用程序将创build像GameMaker或类似的引擎。 PS:万一你在问, 与networking相反的物理连接(例如,基于网页的GUI前端)被devise 。

如何构buildNodejs服务器和rails之间的通信?

我目前正在使用rails来提供静态网页,我正在尝试使用NodeJ来处理我的应用程序的一些实时方面。 我已经能够通过让Nodejs写入数据库和我的Rails服务器读取数据,在Nodejs和Rails服务器之间进行单向通信。 现在我想以另一种方式做,也就是Rails中的一个动作会触发Nodejs中的一个动作。 很明显,我可以哑巴,有一个节点不断轮询数据库服务器。 我有什么select? 在两者之间build立RPC调用 两种方式build立一个TCP套接字 有更简单/更快的select吗?

如何在使用PM2时configuration主进程

我在NodeJS中遇到了PM2问题。 没有PM2,我们总是会有一些如下的代码来configuration主进程 if(cluster.isMaster){ //master process configuration } else { //worker process configuration } 确切地说,我想发送一个工人的信息给主人,然后主人会发回一个信息给所有的工作人员通知一个事件。 实际上,我看到,在使用PM2时,主进程configuration中没有任何代码行。 非常感谢关于这个问题的任何想法!

如何在打字稿中加载电子模块

我尝试从打字稿中的电子获得ipcRenderer模块,将信息从当前组件发送到核心,并将信息返回窗口(电子铬浏览器)。 我得到的是通过将ts代码转码为ES5而出现“模块未find”的错误。 const ipc = require('electron')。ipcRenderer;` 更新:错误是在“找不到模块”和这个之间切换: ERROR in ./~/electron/index.js Module build failed: Error: ENOENT, open '/…/node_modules/electron/index.js' @ ./app/components/search/search.ts 12:10-29 这是从现在的电子api 。 我也尝试使用打字机的input语法,但结果是一样的。 比我试图在ES5文件中使用electron.ipcRenderer模块,直接在html文件中加载/链接。 那里工作。 为什么?

Python进程派生的NodeJS – 替代process.send()的Python?

我用NodeJS派生Python脚本,默认情况下,NodeJS在这个新进程和父进程之间创build一个IPC。 使用NodeJS,从小孩发送消息给父母,我做process.send({msg : 'toto'}) 我怎么用Python做到这一点? http://nodejs.org/api/child_process.html#child_process_child_process_spawn_command_args_options

用java / scala代码连接node.js进程的最快方法

我有一个用java / scala实现的计算库。 而且我还有一点node.js代码服务于我的应用程序。 我需要find一个方法,如何将这两个世界连接起来,获得最大的性能,但也要考虑到简单性。 我正在考虑通过共享内存进行内部进程通信,但在node.js中找不到任何成熟的方法 这应该主要作为代理机制从node.js代码中调用一些java(理想的是任何)代码。 从node.js到java端,只会请求元数据传递,但是从java到node.js,有时它可能是重要的数据返回(比方说100-200 kb作为上边界,大约90-1000字节案件)然而,这个要求的数额可能是重大的。 考虑OpenMP可能是一个选项,但也找不到Node的任何openmp协议实现。 但是对于java也没有明确的项目。 看起来目前有几种select: 本地扩展+ Java不安全(目前通过reflection提取,应该在JDK 9中打开),并且在基于C / C ++的环境中使用共享内存(需要调查和开发,放松节点 – > c – > Java可能高于共享内存的好处) 使用套接字(在Linux上相当快,不知道有关Windows,跨平台) FastCGI(仍然使用套接字转换,所以会比1选项慢) ZeroMQ / Nanomessage作为传输层(再次插槽里面,但简化了开发) @大卫的回答。 但是不能说任何具体的事情。 需要调查。

NodeJS – 如何让亲生小孩与父母沟通?

我正在尝试这个: var child = spawn('node', args, {cwd: parentDir, stdio: 'ipc'} ); (args是一个参数数组) 但它给出了以下错误: TypeError:stdio选项的错误值:ipc 这实际上工作,所以这个问题似乎确实是stdio ipc参数: var child = spawn('node', args, {cwd: parentDir} ); 这也适用: var child = spawn('node', args, {cwd: parentDir, stdio: 'pipe'} ); 我读了这个: http : //nodejs.org/api/child_process.html#child_process_child_process_spawn_command_args_options,但我不明白我要去哪里错了。 这是我第一次尝试使用这个NodeJSfunction,所以我很抱歉,如果问题是明显的。 也许还有其他方法可以解决这个问题。 孩子必须产卵,而不是分叉,我只是希望能够从孩子发送消息给父母。 谢谢!! 编辑:我有节点v0.8.18。 我search了IPC http://nodejs.org/changelog.html的版本历史logging,search词“IPC”没有任何内容,这让我觉得我需要一个更新版本的NodeJS。