我正在尝试构建一个自动完成的文本框,其结果将在100毫秒左右。我用firebug检查了谷歌是74毫秒,stackoverflow有500毫秒。
我正在使用drupal6,自动完成需要800毫秒,这根本没用。
有人可以告诉我如何建立一个响应时间不到100毫秒的自动完成?我正在使用mysql作为数据库。
提前致谢。
答案 0 :(得分:2)
执行此操作的唯一方法是个人资料并查看时间进度。
Firebug是一个好的开始 - 是时候回归了吗?生成响应?呈现回复?
如果它正在生成响应,则尝试xdebug或只打印一些计时器语句。 MySQL查询很可能是缓慢的 - 如果它们很慢,请解析您的查询。
答案 1 :(得分:1)
我想你的数据库可能是你的瓶颈。如果您的数据集足够小,请考虑使用memcached来保存尽可能多的常见查询。
答案 2 :(得分:0)
首先你应该找瓶颈。是网络泄漏还是查询处理速度慢。
如果服务器上的查询处理速度很快,您应该使用更强大的环境以及短暂的网络泄漏。 另一种方法是,您应该根据drupal6文档优化系统的性能。例如,确保关闭调试模式。
答案 3 :(得分:0)
因为你似乎并不局限于Drupal。
我建议看看Elasticsearch,这是一个DB,除此之外,还有这个目的,你甚至可以通过HTTP查询它。
或者,我建议您查看请求的往返时间,也许您想看看Websockets HTML5技术。
如果您想深入挖掘,Google开发的SPDY协议可以比启用浏览器上的传统HTTP“更快”