如何处理反应js和sails js中的数百万条记录

时间:2016-10-25 12:36:26

标签: reactjs socket.io sails.js

我有一张包含数百万条记录的表格。我使用Sails js作为我的服务器端代码,React js在视图中呈现数据,而Mysql作为我的DBMS。那么以更快的方式检索数据的最佳方法是什么呢?

与最终用户一样,不希望获得影响用户界面的大量数据。

我首先只带50条记录,然后使用分页逻辑在底部显示分页,然后使用socket.io在后台获取其余内容吗?

还是处理它的任何好方法?

1 个答案:

答案 0 :(得分:0)

这实际上取决于您希望用户如何浏览数据。 您可能想要API调用只获取第一页数据(可能以这种方式获取任何页面:api/mydata/<pagesize>/<pagenumber>)。

然后它取决于你希望你的用户做什么。他是否会点击每个页面查看所有数据?在这种情况下,似乎可以加载所有其他的以及你提到的。然而,这似乎不太可能。

如果您希望用户只查看几个页面,则可以在后台加载下一页的数据(api/mydata/<pagesize>/<currentpage+1>),然后在每次用户导航时加载下一页。

然后你可能仍然需要支持跳转到某个页码,你需要检查你是否有数据,然后在获取数据时显示加载状态(或什么都没有)。

所有这些说,我不明白为什么你需要socket.io而不是正常的请求(如果服务器需要能够发出请求,你真的只需要socket.io。对客户来说可以这么说)