像按需数据加载一样,Facebook的缓存是否必要?

时间:2012-05-24 16:35:02

标签: mysql optimization ondemand

我开发了一个类似于(在外观上)按需数据系统的Facebook,当你到达页面底部时,有一个AJAX请求来加载更多数据。

“问题”是这个按需系统运行的一些mySQL查询相对较慢。因此,为了防止可伸缩性问题,我设计了(尚未实现)缓存系统(仅在此按需用例中使用),用于存储查询结果:

SELECT * FROM table WHERE ....

当用户(应用程序)要求

SELECT * FROM table WHERE .... LIMIT 0,9

所以,当用户向下滚动时,AJAX触发器会向mySQL询问下一个结果:

SELECT * FROM table WHERE .... LIMIT 10,19

缓存系统将提供结果,而无需对mySQL进行另一次查询。

问题是:所有这些都是必要的吗?或者默认的mySQL缓存系统就足够了?换句话说,我知道如果你在很短的时间内运行相同的查询,mySQL缓存系统能够返回正确的结果而不再搜索,但是如果附加到同一个查询,那么它是如此“智能”以避免搜索不同的LIMIT?

当然,如果您知道更好的加速方法,请告诉我。

0 个答案:

没有答案