我正在尝试学习名为Web Sockets的新技术。 我有设置(pywebsocket作为Apache2模块)工作,我正在玩的例子。 http://code.google.com/p/websocket-sample/wiki/samples?ts=1262888726&updated=samples
有一件事困扰着我 - 所有的例子都使用共享文件来监控消息计数器,用户计数器的变化。
所以基本上当我用2个浏览器连接到ws:// localhost / chat时,将运行2个chat_wsh.py(websock处理程序)实例。对? 他们都将访问文件/数据库进行计数。
这可能是一个愚蠢的问题,但我不是网络大师 - 是否可以从一个处理程序向所有连接广播消息。
例如: 来自聊天的用户发送消息 - 消息通过websocket获取到websocket处理程序,后者又向所有其他聊天实例广播收到新消息的信息,从而消除了每个实例不断检查一个共享文件/数据库的需要。
我希望我有道理:)
答案 0 :(得分:3)
我认为您正在尝试描述UDP多播。
有关详情Multicast
,请参阅此链接不幸的是,Websockets通过TCP工作,就像你发现的一对一连接一样。
您可以查看像memcached http://memcached.org/这样的内容,使其“低开销”以保持聊天室的共享状态