繁体   English   中英

正确处理大量数据的正确方法

[英]Proper way to paginate large amount of data

我正在Rails 3中进行一个需要分批处理大量数据的项目。 分页大量数据(例如论坛帖子)以最大化性能的正确方法是什么? 如果我仅从一个集合中获取10个模型,然后在转到下一页时再次获取,那么对于服务器而言,这将是一个很大的工作量吗? 还是加载所有内容并使用javascript对它们进行分页会更好?

假设您正在寻找SQL解决方案:

对于服务器负载,拉10个对象将不是问题。 问题是您使用什么查询来过滤它们。 如果您使用简单的主键来过滤它们或其他有效的标识符,那应该完全可以。 如果您只是想一个接一个地列出页面(每页上列出10个项目),我看不到任何问题。 只需确保获取了所需的列即可(避免选择不必要的列)。

您可以使用will_paginatekaminari进行分页。 无论您的集合大小如何,它们都将仅获取您需要的记录(每页上要拉取的对象数)。

神成

基于范围和引擎的,干净,功能强大,可自定义和复杂的Rails分页器3

will_paginate

Rails 3,Sinatra,Merb,DataMapper等的分页库

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM