自定义的solr搜索系统做为web应用发布到tomcat后,运行过程当中其搜索代码逻辑以下:web
用户solr搜索应用发送搜索请求URL,solr应用的org.apache.solr.servlet.SolrDispatchFilter类接收到请求,apache
SolrDispatchFilter.doFilter()tomcat
-> SolrDispatchFilter.execute()spa
-> SolrCore.execute()接口
-> RequestHandlerBase.handleRequest()get
-> SearchHandler.handleRequestBody()servlet
-> 各个Component依次执行自身的process()方法,如:SpellCheckComponent.process()io
-> 各个拼写检查子模块分别进行拼写检查,SolrSpellChecker.getSuggestion(),如:DirectSolrSpellChecker搜索
-> 调用lucene相关拼写检查接口进行拼写检查;请求