3

我正在通过 python 在 websocket 上开发 Autobahn 的应用程序。我发现了一个问题,如果我在中断后重新启动我的服务器代码,那么我的服务器代码将向我发送如下错误:

2016-03-03 13:20:34+0530 [-] Log opened.
2016-03-03 13:20:34+0530 [-] Traceback (most recent call last):
2016-03-03 13:20:34+0530 [-]   File "TestServer.py", line 23, in <module>
2016-03-03 13:20:34+0530 [-]     reactor.listenTCP(9008, factory)
2016-03-03 13:20:34+0530 [-]   File "/home/ddserver/python1/local/lib/python2.7/site-packages/twisted/internet/posixbase.py", line 478, in listenTCP
2016-03-03 13:20:34+0530 [-]     p.startListening()
2016-03-03 13:20:34+0530 [-]   File "/home/ddserver/python1/local/lib/python2.7/site-packages/twisted/internet/tcp.py", line 984, in startListening
2016-03-03 13:20:34+0530 [-]     raise CannotListenError(self.interface, self.port, le)
2016-03-03 13:20:34+0530 [-] twisted.internet.error.CannotListenError: Couldn't listen on any:9008: [Errno 98] Address already in use.

我错误地理解,即使在中断服务器后,还有一些基本服务仍在运行,但是如何清除所有这些端口?

4

2 回答 2

2

sudo lsof -i TCP:9008 | grep LISTEN效果很好。

参考Python twisted reactor - 地址已在使用中

于 2017-12-06T09:10:37.317 回答
2

你说得很对,即使在你中断之后,你的服务也会继续运行。您需要检查在该端口上运行的进程并手动终止它。您可以使用命令:ps aux查找您的进程并使用以下命令将其杀死:kill -9或者您可以在此处 找到帮助:

于 2016-03-03T08:20:53.720 回答