Next js后端默认是多线程的吗?



目前我正在开始我的项目与内置的Node js服务器内Next js,使用next start命令,但我不确定,如果它有多线程启用。

我的问题是,您是否建议使用内置的Node后端或使用自定义服务器启动Next js项目并启用多线程使用node clusters,以获得最大的性能和速度?

Node默认为单线程,因此' next start '。我使用pm2集群模式,没有遇到任何问题。

启动集群,执行以下操作:

  1. 创建pm2。package.json文件旁边的
{
"apps": [
{
"name": "myNextApp",
"script": "node_modules/next/dist/bin/next",
"args": "start",
"cwd": "./",
"instances": "max",
"exec_mode": "cluster",
"out_file": "/var/log/myNextApp/myNextApp.log",
"error_file": "/var/log/myNextApp/myNextAppError.log",
"watch": "true"
}
]
}

请注意"script";node_modules/next/dist/bin/next"如果你在Next的Typescript下使用,这个配置是6个月前的也许你需要改变这一行,检查pm2 docs

  1. in package。json:添加
{
...
"scripts: {
...,
"pm2": "pm2"
},
...,
}
  1. add devdependencies pm2 (yarn add -D pm2)

  2. 启动集群,你应该能够使用:

npm run pm2 start pm2.json
or
yarn pm2 start pm2.json

来自项目根目录

注。我对是否需要将pm2添加到您的项目深度有一些疑问,我认为当您使用npm I -G和apt-get安装yarn/pm2时可能会有一些差异,这可能会导致更轻的配置,但我不确定…

最新更新