Linux 如何在OpenShift中生成多个nodejs进程

Linux 如何在OpenShift中生成多个nodejs进程,linux,node.js,openshift,openshift-cartridge,Linux,Node.js,Openshift,Openshift Cartridge,在OpenShift环境中,如何运行两个NodeJS进程(从NodeJS官方墨盒),每个进程都有自己的启动文件 基本上,我想制作一个web应用程序,它有时会将作业放入队列中。我认为我应该有两个过程:一个处理web请求,另一个处理作业处理 原因是我认为在一个单独的过程中处理作业是因为如果有很多作业,它可能会阻塞前端部分 到目前为止,这些都是我的解决方案(但我真的不知道它们是否好) 从操作钩子中生成第二个进程(启动和重新启动)。我担心如果工作进程死亡,它将不会自动重新启动 从主进程调用fork或s

在OpenShift环境中,如何运行两个NodeJS进程(从NodeJS官方墨盒),每个进程都有自己的启动文件

基本上,我想制作一个web应用程序,它有时会将作业放入队列中。我认为我应该有两个过程:一个处理web请求,另一个处理作业处理

原因是我认为在一个单独的过程中处理作业是因为如果有很多作业,它可能会阻塞前端部分

到目前为止,这些都是我的解决方案(但我真的不知道它们是否好)

  • 从操作钩子中生成第二个进程(启动和重新启动)。我担心如果工作进程死亡,它将不会自动重新启动
  • 从主进程调用
    fork
    spawn
    等。与上面相同的担忧
  • 不要使用两个过程,只使用一个
其他详细信息

  • 一个作业主要是IO:对Google API的一些HTTP请求(每个作业5-10个请求),以及对mongodb的2个简单请求
  • 起初排队的工作不会很多,但将来可能会有很多
  • 我计划使用concurent功能和UI功能
  • 所有这些内容都将保存在一台服务器上(可能会发生扩展,但可能性很小)

您是否考虑过使用cron作业来启动流程?这样,如果它死了,你可以重新启动它。@corey112358我考虑过从cron运行整个worker。既然您提到了cron,它就可以让worker继续运行。但我认为一定有更好的解决办法。