我知道这个问题以前就已经提出过,但那是三年前的事了,那是一辈子的:)。
我正在使用 twitter-bootstrap typeahead 来自动完成 mysql db 和 php,它现在运行良好。但是我对每个关键事件都进行了查询,这对于大型应用程序来说并不是一个好的解决方案。
这里最好的方法是什么?我在考虑 memcache,但这是一个会增长的动态数据库,我如何确保数据库中的新信息被缓存到?我愿意接受建议。
我知道这个问题以前就已经提出过,但那是三年前的事了,那是一辈子的:)。
我正在使用 twitter-bootstrap typeahead 来自动完成 mysql db 和 php,它现在运行良好。但是我对每个关键事件都进行了查询,这对于大型应用程序来说并不是一个好的解决方案。
这里最好的方法是什么?我在考虑 memcache,但这是一个会增长的动态数据库,我如何确保数据库中的新信息被缓存到?我愿意接受建议。
2013 年 2 月,Twitter 发布了typeahead(不是引导程序),它是一个强大的自动完成开源库,他的功能之一是:
限制网络请求以减轻负载
我建议你试一试。
有用的链接:
http://twitter.github.com/typeahead.js/examples/
https://github.com/twitter/typeahead.js
http://engineering.twitter.com/2013/02/twitter-typeaheadjs-you-autocomplete-me.html
对于自动完成,可以使用三元组匹配。
您还可以使用专门的全文搜索引擎,如 Solr/Lucene 或 Sphinx。
另一种选择:切换到 postgresql 并使用 pg_trgm 扩展。