zoukankan      html  css  js  c++  java
  • Lucene.Net 优化索引生成,即搜索显示优化

    最近发现站内搜索引擎响应速度很慢,因为刚来公司之前技术员跑了源码什么的都没留下。只好自己手动破解源代码dll查找问题所在!

    这个问题代码就暂时不贴了这里只写思路

    原逻辑:经过整体分析后发现之前是使用 Lucene.Net 生成索引文本文档 ,搜索调用生成后的数据显示 。

    问题所在:由于数据量庞大又是全站数据生成,导致生成文本数据过大,生成速度慢,用的Lucene.Net还是老版本生成过程和前端调用文件产生冲突导致生成报错,还有就是访问量大导致Io顶不住

    分析发现由于对每个分类进行全字段进行保存索引导致生成过慢

    前端搜索分页也是读取所有命中的数据也是问题所在

    解决方案:

    经过和网友交流经验最终解决这两个问题

    1.生成索引:只储存有用的字段,比如我要搜索标题和关键词字段 ,那就只插入这两个字段数据和id

    这样的话大大减少生成文件的大小能提高命中响应速度

    2.前端搜索显示: 分页显示不要一次加载所有数据,比如显示第一页就只读第一页的数据,id对应二次加载对应显示的相关数据在使用缓存redis

    最后以上是本人目前感觉最好的优化方案,如有更好的方案请留言交流

    1:如果只是搜索标题和关键词,直接搜数据库就可以了(一般标题和关键词建个索引就可以了)
    用数据库的全文索引,是因为要对内容进行索引。
    为了转移数据库的压力,把全文索引转移到了Luncene。

    2:没啥好说的。

  • 相关阅读:
    赢在中国让创业不再孤独
    职场心得:关于资源整合!
    中国遭遇第三次单身危机
    成功人士个人财富增长的15种能力
    工作三年之后的十三种痛!
    创业需要什么——第一篇 思维能力和行动能力YC
    忠言多少有些逆耳,创业的九条真经
    培养你的品格
    任何一个创业者都要注意的22个经典提示
    获益匪浅:在北京每月能白捡一万元
  • 原文地址:https://www.cnblogs.com/chenmfly/p/5810181.html
Copyright © 2011-2022 走看看