ember.js - Ember Data 如何管理大量记录?

标签 ember.js ember-data

我一直在使用 Ember Data 并且我正在尝试理解一些概念。我有一个非常繁重的数据密集型应用程序,我的后端有返回大量记录的端点。

所以,基本上我有类似 this.store.findAll('places') 的路由。它可以返回数千个地方,每个地方都有几个文本密集型字段,如 servicesdescription .
这只是其中一种资源,还有一些资源也可以处理该数量的数据。

我主要担心的是该应用程序达到某种限制或变得无响应。所以我的问题是:Ember Data 如何管理大量记录?是否有任何最佳实践来处理这些场景?

最佳答案

How does Ember Data manage large amount of records?



与处理少量记录的方式相同。如果您尝试加载/获取大量记录,它不会对性能做任何特别的事情。你需要自己处理。

Is there any best practice to handle those kind of scenarios?



抱歉不行。某种形式的分页确实是实现这一目标的唯一方法。但是正如您在 this thread 中看到的那样,有很多关于“最佳”方法的讨论。有用于处理这种情况的适配器和插件,以及旨在使其变得容易的服务器端样板。但是确实没有使用 Ember Data 进行分页的规范方法。

在我看来,处理大量数据的最佳方法是设计一个查询端点并在您的服务器上实现它,自己处理所有事情。这将是最适合您的应用程序并且最容易理解的。如果这听起来很复杂,那是因为它是。数据集分割/分页不是一个简单的问题,你肯定会遇到问题。这就是为什么还没有达成一致的最佳实践的原因。

更新:Javier Cadiz 在评论中提到了 JSON API,所以我想我会提到它。 JSON API 似乎确实是 Ember Data 的新事实上的标准,而且确实如此 specifiy a pagination方法。然而,JSON API 是相当新的,还没有被广泛采用。我相信直到最近 Ember Data 才切换到 JSON API 适配器作为其默认值。使用这种分页很可能需要您遵守整个 API,而不仅仅是分页方面。 (尽管您总是可以从中窃取某些想法。)因此,我不确定我是否将其称为最佳实践。

底线:JSON API 分页方式可能是 future 的方式,但目前还不是很流行。 (虽然这只是我根据我所看到/阅读的内容得出的意见。没有说有多少人私下使用它。)

关于ember.js - Ember Data 如何管理大量记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32341588/

相关文章:

ember.js - `Ember.Select` bool 属性返回空对象 `{}`

ember.js - 序列化异步有很多关系

javascript - 使用 Ember.js 构建搜索框搜索

javascript - findAll 事件在 ember-data 中返回奇怪的类

javascript - 遍历 Ember.js ember-data 记录数组

authentication - Ember-Data + AMS => JSON 或 HTTP header 的 Ember.js 身份验证 token ?

ember.js - 如何使用 Ember Data (2.4.0-canary) 处理 400 错误

ember.js - EmberJS 使用 HasMany 取消(回滚)对象

ember.js - Ember 模板和 Google AdSense

testing - Ember——组件集成异步测试不会等到返回异步调用