指南图书搜索第一版优化
Posted zzm568599448
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了指南图书搜索第一版优化相关的知识,希望对你有一定的参考价值。
指南、 图书搜索第一版优化
1.定位响应慢过程:
1.了解接口访问整个流程
2.拼url多次访问server返回时间为7~10s,初步判定为服务端问题
3.拼url多次直接访问solr server,返回时间为7~10s,判断为solr server返回数据慢
4.solr server 为什么慢?
1.solr server 配置有问题问题? 2.server请求条件太复杂?(类似于数据库?) 查看数据库数据: 1.图书456本 2.指南2873条 3.病例51296条 不到6w条数据,默认的solr物理配置就没有问题
那么问题就是server请求参数的问题
下面是老服务搜索条件:
然后一个条件一个条件测试
去掉高亮搜索条件 queryUrl += "&hl=true" 返回时间都在100ms以内,那么就是高亮的问题。
分析高亮慢的原因
我们建图书索引的时候,将图书的内容全部都分词建了索引,书的内容大小从几M到几十M,导致这个字段过大,
查询很慢。高亮默认分析字符数为51200个
https://wiki.apache.org/solr/HighlightingParameters
2.解决问题:
1.我们继续减少高亮分析字符数为5000
2.减少高亮返回的片段
<requestHandler name="/searchBook" class="solr.SearchHandler">
<lst name="defaults">
<str name="echoParams">explicit</str>
<str name="defType">edismax</str>
<str name="qf">
cnTitle^20000 introduce^2 MainContent^0.8
</str>
<bool name="hl">true</bool>
<bool name="hl.requireFieldMatch">true</bool>
<int name="hl.snippets">1</int>
<int name="hl.fragsize">30</int>
<int name="hl.maxAnalyzedChars">5000</int>
</lst>
<!-- append spellchecking to our list of components -->
<arr name="last-components">
<str>spellcheck</str>
</arr>
</requestHandler>
老服务图书搜索响应时间列表
新服务图书搜索响应时间列表
下一步优化方案:
1.需求不合理,根据关键字匹配取书内容,书的字数太多,匹配没有价值,将图书全文匹配干掉
2.增加图书tags,根据tags来匹配
以上是关于指南图书搜索第一版优化的主要内容,如果未能解决你的问题,请参考以下文章