在 OpenShift 环境中,我如何运行两个 NodeJS 进程(来自 nodejs 官方插件),每个进程都有自己的启动文件?
基本上我想制作一个有时会将作业排入队列的 Web 应用程序。我认为我应该有两个进程:一个处理 Web 请求,一个处理作业处理。
原因是我认为在单独的进程中处理作业是因为如果有很多作业,我认为它可能会阻塞前端部分。
到目前为止,这些是我的解决方案(但我真的不知道它们是否好用)
- 从动作钩子(启动和重新启动)产生第二个进程。我担心如果工作进程死亡它不会自动重新启动
- 从主进程调用
fork
orspawn
等。与上述相同的担心 - 根本不使用两个进程,只使用一个
其他细节:
- 一个工作主要是 IO:一些对 Google API 的 HTTP 请求(每个工作 5-10 个请求),还有 2 个对 mongodb 的简单请求
- 起初队列中不会有很多工作,但将来可能会有很多
- 我打算将kue用于并发功能和 UI 功能
- 所有这些东西都将保存在单个服务器上(可能会发生扩展,但可能性很小)