1.png (32.91 KB, 下载次数: 7333)
下载附件 保存到相册
8 年前 上传
-- 消息接收者ID receiver_uid varchar(50), -- 消息的唯一指纹码(即消息ID),用于去重等场景,单机情况下此id可能是个自增值、分布式场景下可能是类似于UUID这样的东西 msg_id varchar(70), -- 消息发出时的时间戳(如果是个跨国IM,则此时间戳可能是GMT-0标准时间) send_time time, -- 消息发送者ID sender_uid varchar(50), -- 消息类型(标识此条消息是:文本、图片还是语音留言等) msg_type int, -- 消息内容(如果是图片或语音留言等类型,由此字段存放的可能是对应文件的存储地址或CDN的访问URL) msg_content varchar(1024), …
SELECT msg_id, send_time, msg_type, msg_content FROM offline_msgs WHERE receiver_uid = ? and sender_uid = ?
2.png (35.26 KB, 下载次数: 7463)
// 登陆时所有好友都要拉取 for(all uid in B’s friend-list){ // 与服务器交互 get_offline_msg(B,uid); }
3.png (64.33 KB, 下载次数: 7283)
4.png (78.06 KB, 下载次数: 7332)
5.png (27.76 KB, 下载次数: 7274)
6.png (31.99 KB, 下载次数: 7163)
7.png (27.84 KB, 下载次数: 7161)
来源:即时通讯网 - 即时通讯开发者社区!
查看评分
tuna
轻量级开源移动端即时通讯框架。
快速入门 / 性能 / 指南 / 提问
轻量级Web端即时通讯框架。
详细介绍 / 精编源码 / 手册教程
移动端实时音视频框架。
详细介绍 / 性能测试 / 安装体验
基于MobileIMSDK的移动IM系统。
详细介绍 / 产品截图 / 安装体验
一套产品级Web端IM系统。
详细介绍 / 产品截图 / 演示视频
引用此评论
引用:doublesouth 发表于 2023-06-09 12:42 如果每条消息在下发之前都存入离线消息库,是不是还得监听客户端ack,如果确认客户端收到消息了再从离线 ...
引用:JackJiang 发表于 2023-06-08 21:20 通常肯定是先持久化存库再下方,不然必定会有意外发生
引用:doublesouth 发表于 2023-06-08 19:49 关于“Step 2:服务器查看用户B的状态,发现B的状态为“offline”(即B当前不在线);” 当用户B在线,服 ...
引用:lmyJavaDE1 发表于 2018-08-07 17:02 "进一步优化,解决重复拉取离线消息的问题:拉取了离线消息却没有ACK,服务器不会删除之前的离线消息,故下 ...
引用:某非著名程序 发表于 2021-02-05 09:24 文中第5条优化2一般一次性拉取,主流的的移动端IM(比如微信、手Q等)通常都是以“优化方案2”为主。然后第 ...
引用:江明 发表于 2021-07-23 11:01 是否可以通过端上缓存最新的消息时间戳,拉取的时候带上时间戳向服务器请求,服务器返回>=时间戳的消息。 ...
引用:某非著名程序 发表于 2021-01-31 09:14 服务端不会存储消息,如果客户端切换设备,或者同时有多个端如PC端、手机端,是不是意味着没有历史记录
引用:ToFind1991 发表于 2020-04-01 18:00 你好,我有个疑问,就是最后说分页拉取的时候,后一次是前一次的ack,会不会出现拉20条消息,有一条丢了,这 ...
精华主题数超过100个。
连续任职达2年以上的合格正式版主
为论区做出突出贡献的开发者、版主等。
在线时长累积7天(即7 * 8 = 56小时)。
持有金钱达到500。
本人属:兔
本人属:牛
本人属:龙
本人属:羊
本人属:鼠
本人属:虎
本人属:蛇
本人属:猴
本人属:马
本人属:鸡
本人属:狗
积极发起、参与各类话题的讨论等,主题、发帖内容较有价值。
Copyright © 2014-2024 即时通讯网 - 即时通讯开发者社区 / 版本 V4.4
苏州网际时代信息科技有限公司 (苏ICP备16005070号-1)
Processed in 0.254893 second(s), 50 queries , Gzip On.