nodejs-pm2管理js并发/自动重启/恢复等

目录

        • 一、nodejs安装
        • 二、启动运行js
        • 三、实用功能1-pm2对进程名起别名
        • 四、实用功能2-pm2启动多个进程
        • 五、实用功能3-pm2内存限制自动重启
        • 六、实用功能4-服务器宕机前保存记录恢复进程

一、nodejs安装

  • nodejs安装
  • 使用nohup后台启动项目,倒是解决了控制台问题,但是项目多进程、重启、停止、刷新、退出又成了问题,如何更好的管理项目启停、多进程,这时候就引入了pm2
  • 全局安装npm install -g pm2,pm2是node的进程管理器,利用它可以简化node任务的管理,且内置了许多功能,常用于后台脚本管理
  • pm2 是一个带有负载均衡功能的Node应用的多进程管理器,虽然是为node开发的,但也能管理其他程序进程,且能让你的进程异常停掉后重启

二、启动运行js

  • 我们平常运行js可能就node aaa.js就结束了,其实用pm2管理更好,pm2的基本使用

  • 启动单个js文件pm2 start aaa.js ,也可以启动管理python文件
    在这里插入图片描述

  • 查看当前运行的进程pm2 l
    在这里插入图片描述

  • 单个重启进程pm2 restart aaa.js 重载 pm2 reload aaa.js

  • 单个停掉进程pm2 stop aaaa.js

  • 单个删除进程pm2 delete aaaa.js
    在这里插入图片描述

  • 批量删除/停掉/重启pm2 delete all ; pm2 stop all ; pm2 restart all

  • 查看进程日志pm2 logs

  • 查看进程详细的信息pm2 show
    在这里插入图片描述

三、实用功能1-pm2对进程名起别名

  • pm2 start express_api.js --name sy_api
    在这里插入图片描述

四、实用功能2-pm2启动多个进程

  • 正确的进程数目依赖于cpu的核心数目,并发启用多个pm2 start aaaa.js -i 4
    在这里插入图片描述

五、实用功能3-pm2内存限制自动重启

  • pm2 start aaa.js --max-memory-restart 200M , 关于pm2重启策略的详细介绍,pm2重启策略看这篇文章就好 ,注意:单位可以是 K(例如 512K)、M(例如 128M)、G(例如 1G)
    在这里插入图片描述

六、实用功能4-服务器宕机前保存记录恢复进程

  • 保存记录pm2 save
    在这里插入图片描述

  • 快捷恢复挂断的进程pm2 resurrect 前提启动完进程后 pm2 save了 ,我们用pm2 delete模拟了进程挂断的场景,比如express_api进程没有了,然后恢复下,直接敲pm2 resurrect
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/8794.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

高适的逆袭之路

骆宾王7岁咏鹅,王勃10岁写论文,王维18岁名震天下。 高适50岁才步入仕途。 父亲官居刺史,祖父正三品还封了平原郡公,拿着将门虎子剧本的高适,却因父亲早逝,荣耀和显赫已成过往云烟。能握住的,是…

JUC--CompletableFuture下

对计算速度进行选用 import java.util.concurrent.CompletableFuture; import java.util.concurrent.TimeUnit;public class Test4 {public static void main(String[] args) {CompletableFuture<String> a CompletableFuture.supplyAsync(() -> {try { TimeUnit.SE…

Django之ORM的锁,开启事务,Ajax

一、行锁 select_for_update(nowaitFalse, skip_lockedFalse) 注意必须用在事务里面&#xff0c;至于如何开启事务&#xff0c;我们看下面的事务一节 Book.objects.select_for_update().filter(nid3) # 锁住nid3的行select_for_update中的两个参数了解即可&#xff0c;因为在…

基于单片机的智能窗帘智能晾衣架系统的设计与实现

功能介绍 以STM32单片机单片机作为主控系统&#xff1b;OLED液晶显示当前环境温湿度&#xff0c;光照强度&#xff0c;时间&#xff0c;开关状态等信息&#xff1b;雨滴传感器检测当前环境是否下雨&#xff0c;天气下雨检测&#xff0c;天气潮湿时自动收衣服&#xff1b;可以通…

文心一言 VS 讯飞星火 VS chatgpt (54)-- 算法导论6.2 6题

文心一言 VS 讯飞星火 VS chatgpt &#xff08;53&#xff09;-- 算法导论6.2 5题 六、证明:对一个大小为 n的堆&#xff0c;MAX-HEAPIFY 的最坏情况运行时间为 Ω(Ign)。(提示对于n个结点的堆&#xff0c;可以通过对每个结点设定恰当的值&#xff0c;使得从根结点到叶结点路径…

mybatis-plus用法(二)

(5条消息) mybatis-plus用法&#xff08;一&#xff09;_渣娃工程师的博客-CSDN博客 AR模式 ActiveRecord模式&#xff0c;通过操作实体对象&#xff0c;直接操作数据库表。与ORM有点类似。 示例如下 让实体类User继承自Model package com.example.mp.po; import com.bao…

在树莓派上搭建web站点并发布互联网上线【无需公网IP】

文章目录 概述使用 Raspberry Pi Imager 安装 Raspberry Pi OS设置 Apache Web 服务器测试 web 站点安装静态样例站点将web站点发布到公网安装 Cpolar内网穿透cpolar进行token认证生成cpolar随机域名网址生成cpolar二级子域名将参数保存到cpolar配置文件中测试修改后配置文件配…

创新引领未来:RFID技术在汽车装配中的智能革命

射频识别&#xff08;RFID&#xff09;技术作为一种自动识别技术&#xff0c;已经在许多领域得到广泛应用。在汽车装配领域&#xff0c;RFID技术的应用可以提高装配过程的效率、降低人工错误率&#xff0c;并帮助实现自动化和智能化生产。本文将介绍RFID技术在汽车装配中的应用…

C# 在控制台整齐的输出 DataTable

效果: 一、前言 在 Winform 平台,可以用 DataGridView 这样的控件来显示数据库的表单数据,但在 C# 控制台项目中,如果有用到数据库查询,我们想看看查询语句的效果,就比较困难了,比如,我随意写了一个控制台输出,代码如下: using System.Data;namespace CSharpConnec…

scratch 抓狐狸

scratch 抓狐狸 本程序的功能是通过键盘控制“男孩”角色移动&#xff08;程序用的是旋转形式实现上下移动&#xff0c;后来才发现有直接改变y坐标的模块&#xff09;&#xff0c;“狐狸”角色连续在随机位置、随机方向生成&#xff0c;程序显示在场“狐狸”的数量&#xff0c;…

搭建Docker私有仓库

目录 背景介绍 学习目的 学习准备 搭建过程 背景介绍 Docker registry是存储Docker image的仓库&#xff0c;运行push、pull、 search 时,是通过Docker daemon与docker registry通信。 Docker Hub&#xff08;Docker埠&#xff0c;内有大量存储库或叫仓库&#xff09;是D…

Spring源码整体脉络介绍及源码编译

需完成的任务 类------------------------------------------BeanFactory----------------------------------------->Bean【BeanFactory调用getBean()生产出来的】 BeanFactory Spring顶层核心接口&#xff0c;使用了简单工厂模式【根据名字&#xff0c;生产出不同的Bean…