2013-12-12 42 views
1

有誰知道如何優化screwturn搜索功能嗎? 我們一直在使用它作爲內部文檔,我是這方面的技術專家,但我沒有機會分析它。在輸入大量信息之後,我們注意到文本搜索會顯着延遲;在某些情況下最多可達10秒。我在這裏粘貼搜索索引狀態的屏幕抓圖。我們有30多個不同的命名空間,我認爲這些命名空間比我們真正需要的要多,但決定將它們用於組織目的,我想不出爲什麼不這樣做。是否有可能大量的名稱空間影響搜索時間?Screwturn維基百科搜索延遲

當對搜索進行測試時,我能找到的唯一資源峯值是Web服務器上的CPU使用率高峯。

Search Index Status screengrab

+0

您使用的是什麼版本的Screwturn wiki?這是使用標準搜索框「{SEARCHBOX}」還是更高級的搜索引擎頁面?如果搜索引擎頁面,您指定了什麼選項。它可能只是數據庫中缺少的索引,可能會有所幫助。 –

+0

維客版本是3.0.5.600。 我在搜索框和搜索引擎頁面都注意到了這一點。如果我將搜索限制在一個特定的名稱空間中,我發現它確實可以縮短結果時間。 我想過數據庫上的索引,但我認爲這會影響數據庫服務器上的處理,但我注意到的CPU峯值出現在Web服務器上(與數據庫服務器不同)。 –

+1

如果您從原始問題中分析單個搜索的SQL,您可能會注意到該Web應用程序對數據庫非常嘮叨。由於執行搜索的方式(通過名稱空間,從我所看到的,似乎效率非常低),搜索的名稱空間數量較大會影響搜索性能。稍微檢查一下代碼後,我可以看到你可能會在Web服務器上看到一個尖峯。最好的選擇是重構搜索功能,以更好地處理更多的命名空間。 –

回答

1

如果天寒從原來的問題一個搜索的SQL,你可能會發現,Web應用程序是非常健談與數據庫。由於執行搜索的方式(通過名稱空間,從我所看到的,似乎效率非常低),搜索的名稱空間數量更大會影響搜索性能。稍微檢查一下代碼後,我可以看到你可能會在Web服務器上看到一個尖峯。最好的選擇是重構搜索功能,以更好地處理更多的命名空間。