最好将所有数据发送到客户端或查询服务器进行每次搜索?

时间:2017-11-10 23:28:58

标签: javascript mysql ajax optimization

我的网站上有一个搜索功能,需要搜索存储在MySQL中的约2000个项目(此表永远不会更改,它将始终具有相同数量的项目)。它需要做的只是按名称搜索或“LIKE”名称并返回id。我想到了两种方法:

  1. 使用keyup()上的ajax查询数据库,这似乎很多人搜索会很费用
  2. 在加载页面并使用JavaScript搜索它以减少数据库负载时,将所有数据作为JSON文件发送到客户端
  3. 哪种方法更好?或者如果你有更好的方法,我愿意接受建议。

1 个答案:

答案 0 :(得分:0)

取决于你的目的。您想在用户编写搜索词时提供搜索飞行功能,还是想在用户点击搜索按钮或其他内容时返回结果?无论哪种方式,你谈论的2000条记录实际上并不多。因此,我认为您可以将所有这些信息存储到脱机内存缓存中,并且可以从内存中返回结果。 SQL也针对查询进行了相当优化,并且还缓存了结果,因此对于2000条记录,执行查询到DB也不会有任何问题。