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

默认
发表评论 2
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
求教 openfire 过滤大量敏感词汇时的性能优化
我们的im系统使用的用户量比较大,大约有20w用户存在现在有一个需求,需要做一个大敏感词汇库,前期我们已经有一个敏感词汇库,是后台存储敏感词,再同步到android ios 在app本地库中,原来是支持1000左右的敏感词汇,这个办法有个问题,1,会导致安装包过大,而支持量有限 超过1000以上就会使聊天出现延时,现在的处理方案是,在openfire中写插件,大致流程是 词汇保持在数据库中 ---同步到Java内存中 以Map的形式存储。
  
求助大家的是,这个如何保证并发量,会不会给Openfire服务器带来大的压力,如何进行优化。

主要用到技术:编程语言Java、数据库是:Mysql。

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

上一篇:一种Android端IM智能心跳算法的设计与实现探讨(含样例代码)下一篇:IM分布式离线消息分页,怎么减少重复请求?
推荐方案
评论 2
毫无疑问,在IM这种要把高并发做到极致的应用形态,服务端的性能是敏感的,除非一定要放到服务端做,否则请优先考虑在客户端做,因为每个客户端对于这样的算法来说并不费劲,而服务端要面对如此多的用户,每个用户的计算消耗累积起来,则服务器肯定是有巨大的资源消耗,相当不经济。

如果客户端的词库大的问题,完全可以考虑异步下载(并缓存,可以设计一套增量更新算法),这样用户也无感。

如果是客户端性能问题,则你可以考虑针对热点词汇做一些索引等提高性能的策略,总之,我认为性能问题对于客户端来说肯定是有办法解决的,要敢想。
签名: 不开心,不快乐
引用:JackJiang 发表于 2017-04-18 10:31
毫无疑问,在IM这种要把高并发做到极致的应用形态,服务端的性能是敏感的,除非一定要放到服务端做,否则请 ...

讲的挺好的
签名: 为了更好的死亡而拼命的活着
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部