我开发了一个与 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 缓存系统能够返回正确的结果而无需再次搜索,但是当附加到相同的查询时非常“智能”以避免搜索不同的限制?
当然,如果您知道更好的加速方法,请告诉我。