请选择 进入手机版 | 继续访问电脑版

默认
发表评论 4
求助关于web端im的消息存储该怎么实现?从而方便浏览器拉取
5金币
做webim的时候,发送消息这一块不可能直接操作mysql数据库的,所以我现在想使用redis给每一个用户存储一个list表,这样的话初始化的会话框信息也是从这里面拿,等缓存超过设置的上限的时候,同步到mysql数据库,不知道这样行不行。
上一篇:求教自已实现p2p技术时,反向链接的tcp通信失败的问题
推荐方案
评论 4
Web IM不像APP IM可以在客户端做缓存。

你说的Web IM,至少有两块聊天数据需要从取务端拉取,第一个就是首页“消息”列表数据,第二就是每个会话点开后的历史聊天记录的加载。

那你所困惑的具体是我上面说的那一块呢
签名: 《融云技术分享:融云安卓端IM产品的网络链路保活技术实践》http://www.52im.net/thread-2744-1-1.html
我困惑的是首页“消息”列表数据,当前不知道咋么处理,因为我想的是登录成功首页消息列表是存在缓存中的,而且还存了双方的最新100条信息,等到真正的查看更多聊天记录的时候我才去请求mysql类似分页每次给他一点数据,所以在用户发送一条消息(单聊或者群聊),我想的都是直接存入redis先,但是消息咋么保持同步到mysql没有好的想法,还是说我现在的思路就是错误的。
引用:Remember 发表于 2019-07-04 15:49
我困惑的是首页“消息”列表数据,当前不知道咋么处理,因为我想的是登录成功首页消息列表是存在缓存中的, ...

如果你要这么来架构的话,在插入db前,加一层MQ消息中间件,这样就异步解偶了,不用担心性能问题
签名: 《融云技术分享:融云安卓端IM产品的网络链路保活技术实践》http://www.52im.net/thread-2744-1-1.html
从服务端的聊天记录里拉,用算法对数据重新组织后返回给浏览器。
签名: 立秋了,离凉爽的天气应该不远了吧
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部