PM2 - 这被认为是一种很好的做法

时间:2018-02-02 08:11:52

标签: node.js pm2

在我的项目中,我有几台使用PM2运行NodeJS应用程序的服务器,这些服务器不是由我创建的。我对PM2并不熟悉。现在我需要启动一个新服务器,它只是一个查询ElasticSearch实例的CRON进程。 它没有路由或任何东西,只有一个带有一些记录的CRON。 这是我的困境。我玩过PM2,我对它是什么以及它做了什么有点熟悉。但问题是如何运行它?

以前的项目确实有PM2 config.json,有许多参数,它们以集群模式启动(使用Nginx处理),当我启动它们时,我看到所有进程都成为守护进程。但就我而言,我不需要那样做。我只需要它作为单一服务运行。

换句话说,如果我使用配置文件来运行PM2,我看到它在集群模式下生成,并且因为我的CRON被多次触发而产生混乱。我不需要那个。如果我在Fork模式下启动它,它也会生成实例,但是除了一个(因为它们使用相同的端口),所有实例都会死掉。我也不需要那个。 我只需要单一服务。

我设法用单线运行我的CRON app.js,简单如下: PM2启动app.js.它运行在单线程中,我可以看到它的PM2状态信息。一切都很好。

如果我用单行运行(如我的情况),它被认为是好的吗?根据我的知识,如果我使用config.json,它将始终在fork或cluster中运行它。 可以单行运行,还是需要使用config.json文件。

1 个答案:

答案 0 :(得分:0)

如果您只需要运行一个进程,就像这样,您做的是正确的。