我有一个输入字段,我正在尝试模拟Google风格的即时搜索。因此,在每个keyup上,我向我的Node后端发送请求,以查询Mongo的/currentSearchQuery/
(使用正则表达式获得类似结果)。
因此,如果用户键入" apple",我会向Node发送5个GET请求,查询Mongo ...
/a/
/ap/
/app/
/appl/
/apple/
这在某种程度上是非常低效/错误/错误吗?我没有索引我的数据库 - 我应该吗?
答案 0 :(得分:1)
首先,您应该明确索引要经常搜索的字段,这样可以提高搜索结果的性能和速度。 接下来,搜索每个密钥都不是一个好主意。通常,您应该等待最多3个字符才能输入,然后点击搜索查询。
其他提示:为了加快搜索速度,您可能需要使用elasticsearch
。