如何实现一个即时的消息系统

发布于 2022-08-25 00:46:06 字数 77 浏览 24 评论 0

举例:我们三个人参加一个对话,每次这个对话进行更新的时候如何通知其他用户?语言环境是python,数据库是redis。用的是Flask框架。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(9

可爱咩 2022-09-01 00:46:06

Node.js+socket.io很容易实现
可参考 http://socket.io 上面的例子

忘了看你的语言环境,socket.io有基于python的实现:https://github.com/MrJoes/tornadio2https://github.com/abourget/gevent-so...
还有python有很多异步框架也能实现,比如:Twisted http://twistedmatrix.com/trac/

梦亿 2022-09-01 00:46:06

使用:socket.io

你怎么这么可爱啊 2022-09-01 00:46:06

Python的话可以使用Tornado,用Long Polling的方式做。如果要支持Comet的话,可以使用CometD。具体用法google吧。

苦笑流年记忆 2022-09-01 00:46:06

构建一个Realtime系统是很容易的,有很多技术可以选择,要选择一个合适你的,那么你需要充分了解你的业务和客户,你的问题缺少这些东西,所以我只能先简单的罗列出来。

系统的重点是及时消息(IM)的话,你可以采用XMPP这类标准的解决方案。
如果只是很少一部分的功能,那么你可以根据你的业务特点来选WebSocket、FlashScoket、XHR Polling、Long Polling、Http Streaming等

撩发小公举 2022-09-01 00:46:06

语言不重要 我认为原理更重要 楼上各位
一般是如此两种方式
1.推送方式
2.轮询方式

如果语言技术支持的话 个人建议使用推送方式

别闹i 2022-09-01 00:46:06

可以利用rabbitmq。
可以参考我之前翻译的文档。

http://blog.ottocho.com/post/rabbitmq...
http://blog.ottocho.com/post/rabbitmq...

夏天碎花小短裙 2022-09-01 00:46:06

redis有PUB/SUB功能啊…

ㄖ落Θ余辉 2022-09-01 00:46:06

更好的扩展性可以采用 socket.io + ZeroMQ 。

往日 2022-09-01 00:46:06

我想MQTT可以是一个被关注的标准,在私有而小的信讯系统中,MQTT可以很容易的加进系统中而对大型的MQ来说有对应的接口。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文