我遇到一个与Google Suggest非常相似的网站.当您在搜索框中输入2个字符(例如“ca”,如果您正在搜索“佳能”产品),则会产生4个Ajax请求.每个请求似乎都在125ms内完成.我随便观看了Google Suggest,耗时500ms以上.
无论哪种情况,两个站点都很快.为了获得超快的请求/响应,应遵循的一般概念/策略是什么?谢谢.
编辑1:顺便说一句,我打算实施一个电子商务网站搜索的自动完成功能,其中1.)根据所输入的内容提供搜索建议,以及2.根据已经被键入到目前为止.我正在尝试类似于SLI Systems的搜索(例如参见http://www.bedbathstore.com/).
解决方法
这是一个“一个字符串多长时间”的问题,所以我做这个社区维基答案 – 每个人都可以自由地跳上去.
我会说这是一个确保:
>您正在查询的服务器/服务器场/云根据您投掷的负载大小正确,和/或可以根据该负载调整自身大小>服务器/服务器场/云连接到一个很好的快速网络骨干网>您正在查询服务器端的数据结构(数据库表或您有什么)被调整以尽快响应这些精确的请求>你没有发出不必要的请求(HTTP请求的设置可能很贵;你想避免在其中的四个时候触发);你可能还想抛出一点滞后管理(在人们打字的时候延迟请求,只有在停止后几秒钟才会发送请求,如果再次启动则重置该超时)>您可以合理地使用这些工作,将电子邮件发送到电子邮件中>您的服务器配置为重新使用连接(HTTP 1.1),而不是重新建立它们(在大多数情况下,这将是默认值)>你正在使用正确的服务器;如果服务器有大量的保持活动请求,则需要将其设计为正确处理(NodeJS是为此而设计的,例如:Apache不是,特别是尽管它当然是一个非常强大的服务器)>您可以缓存常见查询的结果,以免不必要地进入底层数据存储