我正在编写嵌入在网络应用中的python实时聊天功能。我对实时实施有点困惑。我需要将实时消息推送给不同的用户。
我打算使用websocket,但我不太确定如何将这些套接字保存到数组中,这样一旦用户向服务器发送消息,服务器就可以找到相关的套接字并推送消息。
所以对此有任何想法?或者实现实时聊天功能的常用方法是什么?
提前致谢。
答案 0 :(得分:11)
您需要使用支持websocket的Web服务器,例如Tornado来处理websocket流量。要在不同聊天和用户之间复用聊天消息,可以使用Redis和ZeroMQ等解决方案进行消息多路复用。
然而,听起来你没有经验和起点,所以从一个工作的例子开始是更好的方法。请研究Python的现有实时聊天实现:
https://github.com/heroku-examples/python-websockets-chat
https://github.com/nellessen/Tornado-Redis-Chat
https://github.com/tornadoweb/tornado/blob/master/demos/websocket/chatdemo.py