我在Twisted with autobahn lib上开发了一个websocket服务器。现在我想将它作为带有twistd的守护进程运行。如果是简单的TCP服务器,我会做类似的事情:
application = service.Application("someapp") # create the Application
someService = internet.TCPServer(port, someFactory) # create the service
someService.setServiceParent(application)
在该示例中,我使用TCPServer类而不是reactor.listenTCP函数。
在autobahn api参考中,我发现只有listenWS函数(比如TCP服务器的listenTCP),而不是WSServer类。
所以我的问题是如何让我的应用程序与twistd一起工作?也许我应该实现我自己的服务WSServer类,它扩展了扭曲的Service类?
答案 0 :(得分:3)
是的。创建自己的服务。在其startService
方法中调用listenWS。在stopService
方法中调用shutdown方法。