自定義的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相關拼寫檢查接口進行拼寫檢查;請求