为了提高响应能力,我认为预加载分页数据是个好主意。
原因如下:当用户读取分页数据时,他们最有可能按顺序浏览页面。因此,花费时间让用户阅读当前页面,将以下页面加载到内存中是有意义的(AJAX调用,保存生成的HTML,然后只需使用“下一页”链接替换内容的{{} 1}}而不是加载新页面)。同样,我可以将以前加载的页面保留在内存中,这样,如果用户返回,页面可以立即重新显示,而无需再次往服务器。
我主要担心的是这可能会对浏览器的RAM使用产生影响。我的意思是,突然之间,我有几页而不是一页。这就是说我一直在网页上比我的布局单页大一百倍,而且工作得很好,所以我是否过度思考这个?
我的另一个担忧是数据可能会发生变化(我正在考虑论坛,用户可能会在哪里编辑帖子或(在最后一页的情况下)可能会发布新帖子。我想我可以避免将最后一页存储在内存中,但有什么方法可以检查修改后的帖子而不会破坏整个缓存系统的目的?我能想出的最好的类似于静态资源缓存,其中请求可以是如果是这样的话,服务器可以使用Not Modified进行响应。但是再一次可能会有更多的页面查看而不是编辑它们,所以几乎所有的请求都是Not Modified。我只是不确定去做所有这些,或者只是不值得担心。
答案 0 :(得分:1)
许多网站使用“无限”滚动,允许一次加载许多图像。我相信大多数浏览器都会根据实际显示的内容来管理内存。在某些情况下,进行“无限”滚动比使用分页更加用户友好。
您可以在线程上使用“上次修改”标记 - 然后当您从网站检查正常更新时,您可以将最后修改的内容与html中存储的日期进行比较。如果更改是最近的,那么获取并更新帖子的最新版本。老实说,这可能不值得担心 - 人们习惯于重新加载他们的浏览器来检查变化。
答案 1 :(得分:1)
缓存可提高性能,因此也是如此。如果RAM成为问题,请释放(删除)未使用的旧页面。
最重要的是,您应该保持访问分析,以了解您的用户如何与您的网站进行互动。对其他人有益的事可能对你不利。这完全取决于用户体验 - 您必须进行测试并确定 用户的最佳体验。