如何获取Node.js服务器的PID?它是否等同于require("process").pid?
Node.js HTTP服务器PID相关问题解答
能否获取该服务器的PID?
可以获取,但HTTP服务器本身没有独立的PID——因为它是运行在启动它的Node.js进程中的,所以它的PID就是当前Node.js进程的PID。是否与
require("process").pid返回值相同?
完全相同。你的代码是单进程模式下启动的HTTP服务器,整个服务逻辑都在当前Node.js进程内运行,没有额外创建新进程,所以process.pid就是这个HTTP服务器的PID。
你可以直接在代码中打印验证:
const http = require('http'); const process = require('process'); const serverPort = 8050; function runRequestHandler(req, res) { res.end('Hello World'); } http.createServer(runRequestHandler).listen(serverPort, () => { console.log(`Server running on port ${serverPort}`); console.log(`服务器PID: ${process.pid}`); });
注:如果使用
cluster模块实现多进程服务器,每个子进程中的服务器PID会与主进程process.pid不同,但你的示例代码属于单进程场景,不存在这种情况。
内容的提问来源于stack exchange,提问作者WhatsYourFunction
相关产品推荐
相关产品推荐

