对Tornado WebSocket服务器的并发连接
我们正在尝试搭建一个服务器,使用的是“tornado.websocket.WebSocketHandler”。
和“demos\websocket\chatdemo.py”中展示的情况相反,我们希望每个客户端都能建立自己的私人会话,而不是把消息广播给所有连接的用户。
我们该如何识别每个“等待者”,并把每条消息送到应该接收它的其他客户端呢?
1 个回答
1
首先,发送给服务器的第一条消息必须包含一些数据,以便识别客户端。
处理程序会把自己保存到一个共享的数据中,并与客户端的ID关联起来。最简单的方法就是把这些信息保存在一个字典里,作为websocket应用的属性。
如果需要给某些客户端发送消息,就从共享的数据中找到他们的处理程序,然后调用处理程序的发送方法。