Node.js npm命令运行的进程之间有什么区别:
最近,我使用node.js+express制作了一个简单的API服务器。下面的脚本是我用来运行npm命令的package.json文件的一部分Node.js npm命令运行的进程之间有什么区别:,node.js,express,npm,npm-run,Node.js,Express,Npm,Npm Run,最近,我使用node.js+express制作了一个简单的API服务器。下面的脚本是我用来运行npm命令的package.json文件的一部分 "scripts": { ... "release": "cross-env NODE_ENV=production MODE=release node server/app.js", } 在我用npm run release启动服务器后,我可以看到我的Linux服务器上运行着多个进程
"scripts": {
...
"release": "cross-env NODE_ENV=production MODE=release node server/app.js",
}
在我用npm run release启动服务器后,我可以看到我的Linux服务器上运行着多个进程,如下面所示
/bin/sh /api/node_modules/.bin/cross-env NODE_ENV=development MODE=test node server/app.js
node /api/node_modules/.bin/../cross-env/bin/cross-env.js NODE_ENV=development MODE=test node server/app.js
node server/app.js
我读了相关的文档,但我不明白在后台到底发生了什么
- NPM是在您的shell中生成的(您运行它),NPM本身运行是为了
- 您的npm脚本从一个名为“跨操作系统环境变量设置”的包中生成一个进程
- 该过程依次生成Node.js(在设置环境变量之后)
节点服务器/app.js
-因为这是您的实际服务器,其他的只是“实用程序进程”(一个用于运行的npm脚本,另一个用于环境变量)
值得一提的是,通常情况下,服务器在容器或其他具有用于重新启动/终止流程的内置逻辑的编排器/管理器中运行。通常编排器向流程发送SIGTERM