大家好,
我们最近发现 /search 查询经常出现超时问题。我们对一些搜索词进行了基准测试,发现某些查询可能需要长达 2 分钟才能完成。我们看到了这篇 帖子,但想请教一下是否还有其他建议来应对这个问题。以下是与我们具体情况相关的一些信息:
- 我们最大的站点(超时最频繁的站点)大约有 1,700,000 篇帖子。
- 我们使用的是默认的 PostgreSQL autovacuum 设置。我们收集了一些相关表的统计数据:
categories、posts、topics、post_search_data和users,这些表大约每天执行一次 vacuum,因此我们认为死行导致搜索变慢的可能性不大。 - 我们手动运行了
Jobs::ReindexSearch.new({}),但没有看到明显的改善。
我们考虑在该站点上运行 rake search:reindex,我们知道这将需要相当长的时间,但想请教您是否有其他建议?
提前感谢您的帮助。