ff415501264 2015-08-06 14:59 采纳率: 20%
浏览 2277

Redis和Memcache场景下效率对比

现在我做的是短信网关黑名单过滤机制,我每发一批短信,一批假如1000条,
这1000条数据都会从黑名单库中过一遍,目前我的黑名单是放在redis里,
由于长期的累积, 黑名单数量已经达到了几千万,现在每发一批短信过滤黑名单
的时间基本会耗时1秒到2秒,导致整个发送效率比较慢。对于这种场景下,redis和memcache或者其他缓存数据,更能节约时间提高过滤黑名单的效率。

  • 写回答

2条回答 默认 最新

  • threenewbee 2015-08-06 15:06
    关注

    你的算法本身就有问题,黑名单过滤应该用字典树,而不是简单遍历。

    你要知道,常用英文单词起码有10万,而在1MB内存16MHz的286上运行的Word 6.0都有拼写检查功能,而拼写检查的原理和黑名单其实很类似。就是看你输入的单词在词典中有没有。没有就是你输错了。

    这种任务286都能胜任。

    评论

报告相同问题?

悬赏问题

  • ¥15 Qt下使用tcp获取数据的详细操作
  • ¥15 idea右下角设置编码是灰色的
  • ¥15 全志H618ROM新增分区
  • ¥15 在grasshopper里DrawViewportWires更改预览后,禁用电池仍然显示
  • ¥15 NAO机器人的录音程序保存问题
  • ¥15 C#读写EXCEL文件,不同编译
  • ¥15 MapReduce结果输出到HBase,一直连接不上MySQL
  • ¥15 扩散模型sd.webui使用时报错“Nonetype”
  • ¥15 stm32流水灯+呼吸灯+外部中断按键
  • ¥15 将二维数组,按照假设的规定,如0/1/0 == "4",把对应列位置写成一个字符并打印输出该字符