王和旭 2020-01-09 11:47 采纳率: 0%
浏览 418

springboot+WebSocke开发IM系统遇见的问题?

开发IM系统用于多商家平台不同客服和交友类的小程序,那么我后端使用WebSocket写了IM功能,做到了推送,用户之间可以给用户发信息聊天,但是有一个问题不明白,接收信息的用户未必在线,那么推送就会失败,这个时候,推送的信息是保存在哪里的?redis还是数据库?然后才等待接收者上线时候,查询一遍要不要待推送的,然后推送给他。

  • 写回答

1条回答

  • 紫宇寰 2023-09-11 10:52
    关注

    websocket在用户断开连接时,都有一个事件通知,会在连接池中销毁掉该连接。所以一般不会出现接收信息的用户未必在线这种情况。
    在你没有处理这些无法推送到用户的数据时,默认是会丢失(可能会报错,记不太清了)。如果要存redis或者数据库,需要你手动去处理这种情况的。

    评论

报告相同问题?

悬赏问题

  • ¥15 keil的map文件中Image component sizes各项意思
  • ¥30 BC260Y用MQTT向阿里云发布主题消息一直错误
  • ¥20 求个正点原子stm32f407开发版的贪吃蛇游戏
  • ¥15 划分vlan后,链路不通了?
  • ¥20 求各位懂行的人,注册表能不能看到usb使用得具体信息,干了什么,传输了什么数据
  • ¥15 Vue3 大型图片数据拖动排序
  • ¥15 Centos / PETGEM
  • ¥15 划分vlan后不通了
  • ¥20 用雷电模拟器安装百达屋apk一直闪退
  • ¥15 算能科技20240506咨询(拒绝大模型回答)