制作类似帖子php / mysql的最佳方法

时间:2012-02-25 14:47:10

标签: php mysql

我希望代码不会导致服务器上的负载在php / mysql中找到类似的帖子

我尝试

MATCH (post) AGAINST ('string string')

但它导致服务器上的负载很多,所以它停止了我的服务器

我的数据库中有超过4,125,274张帖子

请帮助mE

2 个答案:

答案 0 :(得分:4)

虽然全文索引会有所帮助,但如果你想多次加载类似的项目,它仍然会很慢。我们有一个实现,其中包含大约700万条带全文的帖子记录,如果我们只依赖mysql,则可能需要长达一分钟的时间进行搜索。

一个很好的选择是拥有像sphinx http://sphinxsearch.com/这样的搜索服务器,它可以创建自己的索引和缓存,速度要快得多。 它简单而有效,被许多大的地方使用,如urbandictionary,craiglist,mozilla等。

如果您只想在mysql查询中执行此操作,并且如果您不想多次执行一次搜索,请尝试在memcached上缓存返回的ID。

答案 1 :(得分:0)

假设你已经在帖子上有一个全文索引,这没有帮助你应该考虑在你的帖子上加入一个专用的搜索引擎,比如Lucene(不一定是php实现)