Javascript

【九月打卡】第11天 Node.js开发博客——多进程、常用配置

本文主要是介绍【九月打卡】第11天 Node.js开发博客——多进程、常用配置,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

课程信息

课程名称: Node.js+Express+Koa2+开发Web Server博客
课程章节: 第6章 博客项目之登录
课程讲师: 双越

课堂笔记

1、进程守护

1.基本概念

node app.js和nodemon app.js 进程崩溃则不能访问。
pm2遇到进程奔溃,会自动重启。可以还原到之前没有错误的情况。

2.基本案例

package.json:

"scripts": {

"dev": "cross-env NODE_ENV=dev nodemon app.js",

"prd": "cross-env NODE_ENV=production pm2 start app.js"

},

启动项目(开发环境):

命令:npm run dev,如果访问:http://localhost:8011/err,那么网页将会直接奔溃,无法访问。

启动项目(生产环境):

命令:npm run prd,如果访问:http://localhost:8011/err,那么网页还能正常访问,pm2进程会自动重启。

查看日志:pm2 log

2、常用配置

1.基本目录

新建PM2配置文件(包括进程数量,日志文件目录等)

修改PM2启动命令,重启

访问server,检查日志文件的内容(日志记录是否生效)

2.基本概念

pm2.conf.json:

{

“apps”: {

“name”: “pm2-test-server”,

“script”: “app.js”,

// 监听文件变化,自动重启

“watch”: true,

“ignore_watch”: [

“node_modules”,

“logs”

],

// 配置多进程(因为是4核CPU,所以通常是处理4个进程)

“instances”: 4,

// 日志的存放路径

“error_file”: “logs/err.log”,

// 错误的存放路径

“out_file”: “logs/out.log”,

// 给每一行日志加一个时间戳

“log_date_format”: “YYYY-MM-DD HH:mm:ss”

}

}

3、多进程

1.使用多进程的原因

操作系统会限制一个进程的最大可用内存。
无法充分利用机器全部内存。
无法充分利用多核CPU的优势。

2.使用多进程的问题

系统内存中,多个进程中的内容是无法共享的。
因此多个进程之间,可以通过访问redis实现数据共享。

3.关于运维

服务器运维,一般都由专业的OP人员和部分来处理。
大公司都有自己的运维团队。
中小型公司推荐使用一些云服务,如阿里云的node平台。

这篇关于【九月打卡】第11天 Node.js开发博客——多进程、常用配置的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!