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

默认
发表评论 7
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
求教:IM中好友关系存储和单聊消息鉴权的设计问题
在IM系统中如果具备常见的好友关系功能,那么当服务器接收到来自客户端单聊消息时,服务器每次都要检查该客户端和其发送该单聊消息的对端是否为好友关系(即是否有权限给对方发送消息),这可能成为整个IM系统处理单聊消息的性能瓶颈,那么该业务逻辑如何设计(包括好友关系如何存储,客户端发送单聊消息时好友关系的鉴权等)才能提高好友关系的鉴权效率,进一步提升IM处理单聊消息的性能?请教各位大佬,望详尽解答为感!

即时通讯网 - 即时通讯开发者社区! 来源: - 即时通讯开发者社区!

标签:求助 IM开发
上一篇:求教如何优雅解决IM中由群聊产生的循环拉取问题?下一篇:请问,现在有哪些主流的服务器支持QUIC协议呢

本帖已收录至以下技术专辑

推荐方案
评论 7
在客户端、服务端做好安全措施的情况下,好友关系的鉴权其实没想的那么严肃,放到客户端处理就好了。
服务端来处理的话,一是会加重逻辑复杂性,二是性能一定会有影响,不划算。
im这种东西,不是金融系统,是可以允许万有一失的,qq也都是这个设计原则。
签名: 《IM开发干货分享:万字长文,详解IM“消息“列表卡顿优化实践》http://www.52im.net/thread-3732-1-1.html
引用:JackJiang 发表于 2020-11-25 11:37
在客户端、服务端做好安全措施的情况下,好友关系的鉴权其实没想的那么严肃,放到客户端处理就好了。
服务 ...

这么说也是,感谢
引用:JackJiang 发表于 2020-11-25 11:37
在客户端、服务端做好安全措施的情况下,好友关系的鉴权其实没想的那么严肃,放到客户端处理就好了。
服务 ...

赞群主
服务端不鉴权那是不是我可以恶意抓取其他用户的id,给对方发消息
引用:深海 发表于 2021-09-29 10:22
服务端不鉴权那是不是我可以恶意抓取其他用户的id,给对方发消息

你们消息的qps有多大啊,我觉得这个问题和IM本身没有关系,而是服务端处理能力的问题,对于QPS比较高的场景,基本上都是分布式+缓存来解决,比如本地lru缓存,使用redis等,对于访问缓存出错的情况,默认放过,然后添加这种出错的异常监控报警
引用:zhxh007 发表于 2021-10-15 23:34
你们消息的qps有多大啊,我觉得这个问题和IM本身没有关系,而是服务端处理能力的问题,对于QPS比较高的场 ...

楼主的意思,应该是问安全性的问题跟性能问题,该怎么平衡
签名: 《IM开发干货分享:万字长文,详解IM“消息“列表卡顿优化实践》http://www.52im.net/thread-3732-1-1.html
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部