首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

即使在执行pm2 kill命令之后,pm2仍在加载较旧版本的节点js代码

pm2是一个流行的进程管理工具,它用于在云计算环境中管理和监控Node.js应用程序。

当使用命令"pm2 kill"来关闭pm2进程时,它会终止所有正在运行的应用程序,并且完全关闭pm2的进程管理。在这种情况下,pm2将不再加载和执行任何代码。

根据所提供的问答内容,可以推测出pm2可能出现了一些异常情况,导致它在执行"pm2 kill"命令后仍在加载较旧版本的节点js代码。这可能是由于pm2进程没有正确终止,或者有其他进程在运行导致的。

为了解决这个问题,可以尝试以下几个步骤:

  1. 通过命令行工具查看当前系统中是否仍有pm2进程在运行。可以使用命令"ps -ef | grep pm2"来查找与pm2相关的进程,并使用"kill -9 <进程ID>"来强制终止它们。
  2. 确保在执行"pm2 kill"之前,没有其他程序正在使用pm2来管理相同的节点js代码。在同一个系统中同时运行多个pm2进程可能会导致冲突和异常行为。
  3. 如果问题仍然存在,可以尝试重新安装或更新pm2。使用npm全局安装命令来重新安装pm2:"npm uninstall pm2 -g"和"npm install pm2 -g"。

关于pm2的更多信息和使用方法,可以参考腾讯云的相关文档和产品介绍链接:

  • 腾讯云产品:Serverless Cloud Function(SCF)
    • 链接:https://cloud.tencent.com/product/scf

请注意,由于要求不提及其他云计算品牌商,本回答只提供了关于pm2的一般解释和腾讯云相关产品链接。具体的解决方案可能因为环境和情况的不同而有所差异。建议在实际应用中根据实际情况进行调试和处理。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Linux 守护进程启动方法

$ node server.js & $ disown 执行上面的命令以后,server.js进程就被移出了”后台任务”列表。你可以执行jobs命令验证,输出结果里面,不会有这个进程。...信号 $ disown -h # 根据jobId,移出指定后台任务 $ disown %2 $ disown -h %2 五、标准 I/O 使用disown命令之后,还有一个问题。...该进程不再能够接收任何输入,即使运行在前台。 重定向标准输出和标准错误到文件nohup.out。 也就是说,nohup命令实际上将子进程与它所在 session 分离了。...七、Screen 命令与 Tmux 命令 另一种思路是使用 terminal multiplexer (终端复用器:同一个终端里面,管理多个session),典型就是 Screen命令和 Tmux...save # 列出每个进程统计数据 $ pm2 monit # 查看所有日志 $ pm2 logs # 导出数据 $ pm2 dump # 重启所有进程 $ pm2 kill $ pm2 resurect

5K81

Linux 守护进程启动方法

$ node server.js & $ disown 执行上面的命令以后,server.js进程就被移出了"后台任务"列表。你可以执行jobs命令验证,输出结果里面,不会有这个进程。...信号 $ disown -h # 根据jobId,移出指定后台任务 $ disown %2 $ disown -h %2 五、标准 I/O 使用disown命令之后,还有一个问题。...该进程不再能够接收任何输入,即使运行在前台。 重定向标准输出和标准错误到文件nohup.out。 也就是说,nohup命令实际上将子进程与它所在 session 分离了。...七、Screen 命令与 Tmux 命令 另一种思路是使用 terminal multiplexer (终端复用器:同一个终端里面,管理多个session),典型就是 Screen 命令和 Tmux...save # 列出每个进程统计数据 $ pm2 monit # 查看所有日志 $ pm2 logs # 导出数据 $ pm2 dump # 重启所有进程 $ pm2 kill $ pm2 resurect

4.5K50
  • Node.js运行原理、高并发性能测试对比及生态圈汇总

    事件循环(Event Loop) Nodejs 执行之后会初始化一个事件循环,执行代码程序(这些程序可能会造成异步调用、定时器或者process.nextTick()),然后开始执行事件循环。...如果要停止所有应用,可以pm2 stop all 查看进程状态 pm2 list pm2真心很好很强大,可以在线热更新代码,更多指令需要上官网看 pm2和Nginx配合 pm2 + nginx 无非就是...所以这台机器压力会最轻 nginx命令汇总 : nginx 服务器重启命令,关闭 nginx -s reload :修改配置后重新加载生效 nginx -s reopen :重新打开日志文件 nginx...:强制停止Nginx 启动nginx: nginx -c /path/to/nginx.conf 平滑重启nginx: kill -HUP 主进程号 开启Nginx多线程负载均衡和部署pm2...和 Apache、Nginx 不同是,Node.js 似乎对用户并发数不太敏感,尤其是集群节点

    2.8K30

    深入理解Node.js 进程与线程(8000长文彻底搞懂)

    单线程 单线程就是一个进程只开一个线程 Javascript 就是属于单线程,程序顺序执行(这里暂且不提JS异步),可以想象一下队列,前面一个执行之后,后面才可以执行,当你使用单线程语言编码时切勿有过多耗时同步操作...pm2 reloadNamepm2 restartName 应用程序代码有更新,可以用重载来加载代码,也可以用重启来完成,reload可以做到0秒宕机加载代码,restart则是重新启动,生产环境中多用...Sl 5月17 1:19 node /srv/mini-program-api/launch_pm2.js 上面是执行命令linux中显示结果,第二个参数就是进程对应PID 杀死进程...kill 命令用于终止进程 例如:kill-9[PID]-9 表示强迫进程立即停止 这个强大和危险命令迫使进程在运行时突然终止,进程结束后不能自我清理。...解释一下这个原因: Node 中最核心是 v8 引擎, Node 启动后,会创建 v8 实例,这个实例是多线程。 主线程:编译、执行代码。 编译/优化线程:主线程执行时候,可以优化代码

    1.1K30

    深入理解Node.js 进程与线程(8000长文彻底搞懂)

    单线程 单线程就是一个进程只开一个线程 Javascript 就是属于单线程,程序顺序执行(这里暂且不提JS异步),可以想象一下队列,前面一个执行之后,后面才可以执行,当你使用单线程语言编码时切勿有过多耗时同步操作...pm2 reloadNamepm2 restartName 应用程序代码有更新,可以用重载来加载代码,也可以用重启来完成,reload可以做到0秒宕机加载代码,restart则是重新启动,生产环境中多用...Sl 5月17 1:19 node /srv/mini-program-api/launch_pm2.js 上面是执行命令linux中显示结果,第二个参数就是进程对应PID 杀死进程...kill 命令用于终止进程 例如:kill-9[PID]-9 表示强迫进程立即停止 这个强大和危险命令迫使进程在运行时突然终止,进程结束后不能自我清理。...解释一下这个原因: Node 中最核心是 v8 引擎, Node 启动后,会创建 v8 实例,这个实例是多线程。 主线程:编译、执行代码。 编译/优化线程:主线程执行时候,可以优化代码

    2.5K10

    深入理解Node.js 进程与线程(8000长文彻底搞懂)

    单线程 单线程就是一个进程只开一个线程 Javascript 就是属于单线程,程序顺序执行(这里暂且不提JS异步),可以想象一下队列,前面一个执行之后,后面才可以执行,当你使用单线程语言编码时切勿有过多耗时同步操作...pm2 reloadNamepm2 restartName 应用程序代码有更新,可以用重载来加载代码,也可以用重启来完成,reload可以做到0秒宕机加载代码,restart则是重新启动,生产环境中多用...Sl 5月17 1:19 node /srv/mini-program-api/launch_pm2.js 上面是执行命令linux中显示结果,第二个参数就是进程对应PID 杀死进程...kill 命令用于终止进程 例如:kill-9[PID]-9 表示强迫进程立即停止 这个强大和危险命令迫使进程在运行时突然终止,进程结束后不能自我清理。...解释一下这个原因: Node 中最核心是 v8 引擎, Node 启动后,会创建 v8 实例,这个实例是多线程。 主线程:编译、执行代码。 编译/优化线程:主线程执行时候,可以优化代码

    93720

    vue博客实战---博客部署到腾讯云

    进行根目录,执行命令: npm run build --report ? --report可以在打包项目成功打开资源分析界面,会显示打包后每个文件大小: ?...执行命令: nginx -s reload 我们可以尝试访问www.niyueling.cn,看是否可以加载出博客首页。 ?...这里直接贴上一些PM2常用命令pm2 start xxx.js --name xxx 启动xxx.js进程并进行重命名 pm2 restart xxx.js 更新代码后,使用restart命令重启...pm2 show 0 查看id为0进程 pm2 logs 0 显示id为0 进程日志 pm2 logs xxx.js 显示xxx.js进程日志 pm2 logs 显示所有日志 接下来我们来看看如何使用这些命令...然后打开build/webpack.prod.conf.js文件,添加Gzip配置: ? 最后打开nginx.conf文件,http节点下添加Gzip配置: ?

    3.5K51

    如何玩转Sharelist – 学金融文史哲小生

    ”一文 杂谈手记” ”WIN下安装简易Web服务器环境 3.安装pm2管理工具 Git命令行工具中输入如下指令: npm i pm2 -g 安装过后记得查看是否成功 node -v pm2 -v 二...文件夹,打开install.sh文件: 使用VS Code或者别的文本编辑器打开这个文件 注释掉这一行 这是一段PATH路径寻址代码,因为我安装Node.js环境时配置了全局环境变量,可能导致了它加载不到正确路径...具体如下: Sharelist虚拟路径挂载配置内容 ④ 然后Sharelist管理后台绑定虚拟路径 ⑤ 然后首页刷新,出现“目录选项” ⑥ 点击进去,这个ctcc其实就是等效于首页ctcc...save //保存进程信息 pm2 startup //开机自启动 八、pm2常用命令 pm2 start app.js # 启动app.js应用程序 pm2 start app.js -i 4 #...reset [app-name] # 重置重启数量 pm2 startup # 创建开机自启动命令 pm2 save # 保存当前应用列表 pm2 resurrect # 重新加载保存应用列表 pm2

    1.1K30

    在生产环境运行 PM2 & Node.js

    原文:https://medium.com/hackernoon/running-pm2-node-js-in-production-environments-13e703fc108a 维护你代码库并保持其相关性确有难度...pm2 start — 启动指定应用 pm2 scale N — 缩放指定应用实例数量 pm2 kill — 杀掉所有运行中应用 pm2 restart — 重启所有运行中应用...pm2 reload — 重新加载应用配置(这会在你修改了应用环境变量时派上用场) 进程监控 ?...要做到这点,运行如下命令pm2 install pm2\-logrotate 日志管理更多信息可以 https://pm2.keymetrics.io/docs/usage/log-management...如果你已经阅读过其声明,应该见到了这 12 条规则: 一个置于版本控制下代码库, 多份部署 明确地声明,并隔离依赖 环境而非代码中存储配置 将后端服务视为附加资源 严格区分构建和运行阶段 以一个或多个无状态进程运行应用

    1.6K10

    pm2:从小白到写出一键部署前后端工程

    # 本地项目执行命令 # 正确来说,应该在服务器上执行这个命令,鉴于我阿里云服务器内存很小,就在本地执行。...kill -9 pid 近代农业 等完成部署后,就发现这样每次都很麻烦,因为不想每次更新了代码,再去手动重启一遍node,这时候想起来了pm2,它可以监控到文件更新后,去自动重启服务,所以就想着应用上...PM2 是一个守护进程管理器,它将帮助您管理和保持您应用程序在线。 第一版 简单使用pm2 去启动index.js文件 服务器上。...于是有了,/service/目录下添加文件:ecosystem.config.js。 ? image.png 将代码更新到服务上去后,可以使用命令pm2 start ....现代农业 虽然上面的后端部署方式有了很大改进,但是还是有个弊端就是,需要每次登陆服务器并且去手动拉代码,这样很麻烦。 于是写了一个一键部署命令

    83910

    在线六个项目全部迁移Linux

    因为我六个项目中,有前端和后端,有守护进程,代理和源代码管理等等,所以整个迁移过程中,需要安装东西还是比较多,【如果你不需要安装,可以自行跳过】: 1、安装.NET Core SDK https...pm2常用命令记录 $ pm2 start app.js # 启动app.js应用程序 $ pm2 start app.js -i 4 # cluster mode 模式启动4个app.js...# 创建开机自启动命令 $ pm2 save # 保存当前应用列表 $ pm2 resurrect # 重新加载保存应用列表 $...这个时候,我们在外网访问下,一切正常了,很棒,这就是开放整体流程: pull 代码 publish批处理文件执行发布 dotnet xxx.dll测试发布是否正常 重启pm2 修改nginx...3、守护进程 很简单,还是在当前文件目录下,执行 pm2 start npm --name "tibug" -- run start 是不是和上边命令很像。

    1.1K50

    Github Actions实现项目的CICD

    而且node.js 是单进程,报错后后整个服务就寄了,所以需要进程管理工具。(需要使用npm全局安装) 简单说一下可能会用到命令pm2 start app.js:启动。...start app.js --name backend 简单讲一下:first_ssh是传输文件前执行命令传输文件前把后端进程以及文件都删除掉(可能文件没必要删,预防万一)。...last_ssh是传输文件后执行命令,包括安装依赖,启动node进程等。 first_ssh和last_ssh开头都有两个命令好像是因为我是通过nvm来使用node原因。...start app.js --name backend 简单讲一下:first_ssh是传输文件前执行命令传输文件前把后端进程以及文件都删除掉(可能文件没必要删,预防万一)。...last_ssh是传输文件后执行命令,包括安装依赖,启动node进程等。 first_ssh和last_ssh开头都有两个命令好像是因为我是通过nvm来使用node原因。

    1.3K30

    Nodejs学习笔记(十三)— PM2

    /package/pm2   使用体会:   1.简单易用、后台运行、快速部署,常用到命令就几个   2.可轻松集群模式启动   3.可以无宕机重暂应用程序,保持不断连接情况下轻松重载代码   4....从PM2中删除 pm2 delete test   当然也可以pm2 delete 进程ID  重载和重启   当应用程序代码有更新,可以用重载来加载代码,也可以用重启来完成 pm2 reload...test pm2 restart test   reload可以做到0秒宕机加载代码,restart则是重新启动,生产环境中多用reload来完成代码更新!...disabled,可以通过如下命令开启 pm2 start app.js --name test --watch   上面的命令中启去吧了test项目并开启了watching,这个用处主要更新代码后,不用重载或重启项目即可以立即让更新代码起作用...用monit可以打开实时监视器去查看资源占用情况 logs pm2 logs   通过上面命令可以实时查看日志输出情况(当然,我更习惯去日志文件里看) 写在之后...

    1.4K70

    如何在CentOS 7上设置Node.js生产应用程序

    撰写本文时,最新LTS版本是4.2.3。如果您希望安装最新稳定版Node.js,请转到相应页面并复制该链接。 切换到您主目录并下载Node.js代码wget。...将创建符号链接到安装节点包,到某处,它在你默认路径。...本教程中,我们将使用vi编辑一个名为hello.js示例应用程序: vi hello.js 将以下代码插入到文件中,并确保将应用服务器专用IP地址替换为两个突出显示APP_PRIVATE_IP_ADDRESS...运行应用程序 您要做第一件事是使用该pm2 start命令在后台运行您应用程序hello.jspm2 start hello.js 这也将您应用程序添加到PM2进程列表中,每次启动应用程序时都会输出该列表...如果应用程序崩溃或被杀死,则在PM2下运行应用程序将自动重新启动,但需要执行额外步骤以使应用程序系统启动(启动或重新启动)时启动。幸运是,PM2提供了一种简单方法,即startup子命令

    2K00

    如何在Ubuntu 16.04上使用PM2和Nginx开发Node.js TCP服务器应用程序

    本教程中,您将构建一个基本Node.js TCP服务器,以及一个用于测试服务器客户端。您将使用名为PM2强大Node.js流程管理器将您服务器作为后台进程运行。...您刚编写Node.js服务器仍在运行,阻止了您当前终端会话。我们希望开发客户端时保持运行,因此请打开一个新终端窗口或选项卡。然后从新选项卡再次连接到服务器。...首先,全局使用npm命令服务器上安装PM2 : sudo npm install pm2 -g 安装PM2后,使用它来运行服务器。...您将使用pm2命令而不是运行npm start以启动服务器: pm2 start server.js 你会看到这样输出: [PM2] Spawning PM2 daemon with pm2_home...这是在对任何应用程序文件进行更改时重新加载服务器功能。它在开发中很有用,但我们在生产中不需要这个功能。 要获取有关任何正在运行进程更多信息,请使用pm2 show命令,后跟其ID。

    1.5K30

    进程管理:通过PM2来管理Node、PHP CLI等应用运行

    应用程序挂掉之后PM2会自动重启这个程序,超过最大次数之后,停止重启 PM2使用 1.安装PM2 $ npm install pm2@latest -g # or $ yarn global...进程日志相关: pm2 logs [--raw]命令,以流式方式显示所有进程日志 pm2 flush命令,清空所有日志文件 pm2 reloadLogs命令,重新加载所有日志 进程操作相关: pm2...stop all命令,停止所有进程 pm2 restart all命令,重新启动所有进程 pm2 reload all命令,将0秒停机时间重新加载(适用于网络应用程序) pm2 stop 0命令,停止特定进程...命令,向脚本发送系统信号 pm2 start app.js --cron-restart="0 0 * * *",额外重启策略 pm2 start app.js --no-daemon命令,启动进程而不使用守护程序...对于确保应用程序系统重启后自动启动非常有用。

    1.5K40

    node服务及前端应用部署

    本文案例取自在笔者腾讯云服务器上实践。上线部署大公司里其实是专人操作,一个产品从构思到发布,许许多多坑要踩。 对于前端(伪全栈)来说,想要流畅上手部署。命令行知识还是基础。...从git拉取 实际工作中,我有可能从git上拉取代码。那就给服务器装一个git吧。...先写一个会报错程序,它有十分之一几率执行一个不存在方法 aaa,也就是有10%几率报错: // app.js const Koa=require('Koa') const app =new Koa...pm2常用命令: # 安装 sudo npm i pm2 -g # --watch:坚挺文件变化 # 2表示启动多少实例 pm2 start app.js --watch i 2 # 根据机器cpu...核心数最大限度利用资源 pm2 start app.js -i max # 查看运行进程 pm2 list # 关闭 pm2 stop xxx pm2 stop all 完全可以项目中建一个process.yml

    2.2K40

    使用pm2方便开启node集群模式

    (注:Node执行JS代码运行在V8上,是单线程,但并非真正单线程架构) Node.js cluster module Luckily enough, Node.js offers the cluster...Example : 在生产环境让你程序永不中断 PM2 reload 命令会一个接一个重启工作线程,工作线程启动后才结束老工作线程。...这种方式可以保持你Node程序始终是运行状态。即使在生产环境下部署了新代码补丁。...也可以使用gracefulReload命令达到同样目的,它不会立即结束工作线程,而是通过IPC向它发送关闭信号,这样它就可以关闭正在进行连接,还可以退出之前执行一些自定义任务。这种方式更优雅。...结论 Cluster集群模式非常强悍有用,此功能是Node 0.10.x 是实验功能,0.11.x 之后才作为正式发布。 强烈建议你使用最新版本Node.jsPM2

    1.9K10

    使用pm2部署node生产环境

    ---- pm2常用命令 启动服务pm2 start [options] 启动指定应用 pm2 start app.js...//重新启动所有进程,0秒重启,始终保持至少一个进程在运行 pm2 gracefulReload all //以群集模式重新加载所有应用程序 启动静态服务器pm2 serve ....[ID] //根据应用ID关闭并删除应用 pm2 kill 杀掉pm2管理所有进程; pm2 logs 查看指定应用日志,即标准输出和标准错误...pm2 monit 监控各个应用进程cpu和memory使用情况; ---- PM2配置方式 命令生产默认示例配置文件pm2 ecosystem或pm2 init,运行默认会生成ecosystem.config.js...决解方案,安装pm2pm2-intercom进程间通信模块 log4js配置文件logger.js里添加如下命令pm2: true, pm2InstanceVar: 'INSTANCE_ID

    3.9K40
    领券