Skip to main content
 首页 » 编程设计

python之高速公路 Websocket : listen to local port and transfer messages to clients connected to a public port

2025年05月04日38youxin

我是 Autobahn 和 Websockets 的新手。 我正在尝试构建以下设置:

  • 处理服务(基于 Java 的黑盒):

    • 等待来自 Twitter 的流媒体 API 的数据
    • 如果收到新消息,则会将消息发送到主服务 (ws://localhost:9999) {id, 纬度, 经度}
    • 对数据进行一些神奇的处理(这可能需要几分钟)
  • mainservice 在 ws://localhost:9999 上监听来自处理服务的传入消息

    • 如果消息传入(来自处理服务),它们将被广播到 ws://:9000 上连接的客户端
  • javascript 客户端连接到 ws://:9000 上的主服务,在 map 上显示消息

是否可以编写主服务,让 Autobahn 监听一个端口并通过另一个端口传递消息? (从性能的角度来看,将处理和主要服务结合起来可能会更好……但这不应该是这里的重点。)

请您参考如下方法:

当然,您可以在不同端口上运行多个服务,也可以在一个端口上运行多个服务。对于后者,请参阅 here .对于前者,只需创建多个工厂并多次调用listenWs即可。