我正在使用Websocket服务器,并尝试使用python twisted + autobahn,但我相信我遇到了内存泄漏。实际上,我能够使用https://github.com/crossbario/autobahn-python/tree/master/examples/twisted/websocket/echo
上的回显代码来重现它。我看到的症状是,在服务器端关闭连接后,协议实例再也不会释放。
我试图以多种方式对此进行检查-最简单的方法是在 del 方法中添加打印,更复杂的是使用pdb和gc进行检查。是的-随着连接的建立和关闭的不断进行,观察到该进程对内存的使用稳步上升。
我希望发生的是-在onClose完成之后,协议实例应该永久消失。实际上,我还有其他基于扭曲的服务器实现(但是没有高速公路Websocket),并且我已经证实了它的工作原理(尽管我改用connectionLost)。
有人知道发生了什么吗?