2014-10-07 95 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