2014-10-07 96 views
0

我在尋找,如果我可以優化我的網頁上的搜索。使用JavaScript/Ajax優化搜索結果

我在做什麼現在的問題是,

我提供的搜索框,在這裏用戶可以搜索KEYUP賬戶號碼。

我在MySql數據庫表中有80K-90K的數據用於搜索 (表索引和使用主鍵)。

在頁面加載時,我使用HTML格式加載與數據庫中的帳戶相關的所有數據到頁面,而不是用戶可以在HTML頁面上搜索帳戶。

通過上述方法頁面加載緩慢得,

所以我試圖以直接通過Ajax調用上KEYUP搜索數據庫表,而不是裝在頁面加載的所有數據多了一個選擇。

但是仍然在每個鍵盤上搜索數千或數百萬的數據,但是對於搜索並不是有效的解決方案,並且花費了大量的時間。

我很好奇我該如何改進和快速搜索結果?

如果有,任何客戶端網站可能的搜索優化解決方案?

+0

優化有兩種方式。 #1 - 減少工作量。 #2 - 分發更多機器上的工作。在你的情況下,沒有任何可用的數據,不可能告訴你該做什麼。人們通常使用'LIKE'來使用默認的MySQL配置進行搜索和自動完成,這種配置自然會慢一些。 – 2014-10-07 12:49:54

+0

@ N.B。請繼續 - 如何更高效地完成相同數量的工作? – Strawberry 2014-10-07 12:53:32

+0

@Strawberry - 做更少的工作意味着,不是嗎? :) – 2014-10-07 12:57:54

回答

0

您可以做些什麼來提高流程效率。

  1. 使用jQuery的autocomplete library

  2. 在包含此特定數據的數據庫表上創建索引。這將有助於特別是如果你有數百萬條記錄。

  3. 設置用戶輸入的最小字符數限制,比如說3,因此它會自動縮小要搜索的數據。

+1

除#3外,您還可以添加超時功能只能在沒有按鍵的情況下在X毫秒後開始搜索。 – csbarnes 2014-10-07 12:19:00

+0

謝謝avnishkgaur,但我已經應用了所有的建議解決方案。 – mayank 2014-10-07 12:35:09