谷歌应用引擎网站上的Jquery分页,搜索,过滤和其他功能

时间:2011-03-31 16:41:55

标签: jquery google-app-engine performance pagination quota

假设您有一个包含大约500本书(属性:封面图片,标题,作者,摘要等)列表的网页,并希望对它们进行分页。一种方法是使用限制和偏移参数,另一种方法是使用游标。对于每个后续页面,将获取下一批次。但是,如果您刚刚获取所有书籍,记录整个列表的速度,使用类隐藏属于其他页面的书籍,然后使用jquery进行分页,该怎么办?这不会比限制+偏移或游标方法更快,更少配额密集吗?

这也适用于非JavaScript用户,只需为属于其他页面的书籍设置合适的隐藏类即可。对他们来说可能会慢一点(尽管memcache可能对此有所帮助),但假设大多数现代用户启用了javascript是不合理的呢?

然后我还可以向页面添加更多jquery功能,例如jquery搜索(由于app引擎无法进行全文搜索,因此很方便),过滤,加载等。

看起来好多了,但有缺点吗?为什么不是每个人都这样做,因为jquery很容易学习?在其他stackoverflow帖子中,关于app引擎分页,甚至没有人提到jquery。

2 个答案:

答案 0 :(得分:1)

我认为在少数实体中,您描述的计划可能有效,但在下载时间之前您无需访问特别大的卷,浏览器性能和浏览器内存使用情况使这种方法难以实现。

如果您决定采用更传统的分页方法,请节省大量时间并使用Ben Davies' PagedQuery类(如果您使用的是Python)。它已经针对缓存和负责任的配额使用进行了高度优化。

答案 1 :(得分:1)

它会慢一点,因为大多数用户只查看第一页或第二页结果,但你仍然在页面加载时推送所有500个结果。这会大大增加页面大小和加载时间。

它的效率会降低,因为加载500个结果的成本仅略低于加载成本,比如20个结果的25倍。