如何设置Autobahn发布/订阅服务器和Autobahn web服务器侦听同一端口?



我最近发现autobahn python和js作为一种舒适的方法来建立一个pub/sub服务器和相应的客户端,甚至使用rpc调用。

看完教程后,我设置了一个websocket服务器和一个运行在同一端口上的web服务器的测试版本。服务器通过websockets定期向客户端发送数据。用户获得的html位于本地主机根目录下。

然而,我想要完成的是:设置一个pub/sub服务器和一个web服务器监听同一端口。

教程只展示了如何在两个不同的端口上设置这些端口(如http://autobahn.ws/python/tutorials/pubsub所示)。

我对蟒蛇很陌生,尤其是高速公路和扭曲。任何建议都会很好!

非常感谢!

Marc

当然。您可以使用Autobahn在一个端口上运行WAMP/WebSocket服务器一个普通的旧Web服务器。这是一个纯WebSocket的例子,这是一个WAMP的例子。

免责声明:我是Autobahn的作者,为Tavendo工作。

当使用WAMP时,HTTP和WS服务器监听同一端口,您需要手动启动WampServerFactory实例,如下所述。

factory = WampServerFactory("ws://localhost:8080")
factory.protocol = YourServerProtocolClass
factory.startFactory() # <--- need to call this manually
resource = WebSocketResource(factory)
root = File(".")
root.putChild("ws", resource)

我会把nginx作为前端,将每个调用转发到pubsub或web…最近的Nginx支持WebSocket转发。

或者你可以用Twisted写一些类似的东西:)

另一种选择是将autobahn.websocket.WebSocketServerProtocol及其子类autobahn.wamp.WampServerProtocol适应Twisted.web。应该是可能的

相关内容

  • 没有找到相关文章

最新更新