FITURE

If you can fight, fight.

首页 >> 分享>>Javascript>>查看/结束后台运行的Node.js进程

查看/结束后台运行的Node.js进程

Posted by fiture / 2013年04月17日 / Javascript

有时候调试Node.js程序的时候,因为代码的问题,导致Node.js进程不能正常关闭,然后端口被占用的情况常有发生。如提示一下错误:

events.js:71
        throw arguments[1]; // Unhandled 'error' event
                       ^
Error: listen EADDRINUSE
    at errnoException (net.js:770:11)
    at Server._listen2 (net.js:910:14)
    at listen (net.js:937:10)
    at Server.listen (net.js:986:5)
    at Object. (/Users/xxxx/node-project-dir/server.js:56:35)
    at Module._compile (module.js:449:26)
    at Object.Module._extensions..js (module.js:467:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.runMain (module.js:492:10)

遇到这种情况,就说明当前监听的端口已经被占用,解决方法其实很简单,就两条命令搞定。

1、查看当前node占用的pid:

$ ps aux | grep node

你的用户名 PID   0.1  0.7  3071480  61976 s001  S+   10:23AM   0:00.79 node server.js

2、然后使用kill命名,杀掉node进程(用上面的PID替换下面命令的PID):

$ kill -9 PID

然后就可以了,类似的方法也可以用于python,比如goagent 中的proxy.py提示端口被占用的情况。

2条回应:“查看/结束后台运行的Node.js进程”

  1. 博主的文章让我学到了不少东西,收藏了。

发表评论

电子邮件地址不会被公开。 必填项已用*标注