因为数据量大 还有不同的表,典型的做法是不是搞个 jenkins job, 把要查的东西集中写到一个小的表里,坏处是有一定的延迟和额外的维护?
先看能不能优化查询咯。不能的话,你说的分级缓存是个挺常见的做法。
描述得不够详细。数据量大,大到什么程度?几十万,几百万,还是已经过亿?如果大到一定程度就需要考虑分库或者分表。
如果你的业务不要求数据实时显示,那可以考虑你说的方案。
好 我先试试加一些 index
我得回去看看到底多大
把要查的东西集中写到一个小的表里,这种做法不靠谱,要么优化 sql,要么加缓存,还可以用 Elasticsearch 这样的搜索引擎
如果不要求数据的实时性,先直接用 Rails 的 Cache 看看效果吧……或许都用不到其他更高端的东西就能解决这个问题。 如果要求实时性,那就加索引先,其他优化方法得根据你的实际业务情况来判断了。
这个要看具体情况了