下面是几个Ember对象创建的性能测试。因性能原因不使用余烬数据是一个好主意
Ember v2.16.0(最新为这篇文章的写作)
几个外卖的:
- 创建灰烬对象比创建简单的慢得多JS对象(Ember v2.3.1约慢100倍,Ember v2.16.0约慢300倍)
- Ember v2.16.0在Ember对象创建方面比Ember v2.3.1慢
我反复运行了perf测试。以上两点在我所有的跑步中都是一致的。
现在,假设我想使用Ember创建一个新的复杂Web UI。 UI需要频繁地与后端交换相当数量的数据(比如,每个http调用100KB)。基于上述性能结果,以及我假设每个模型需要调用多个Ember.Object.create()
余烬数据,在应用程序中不使用ember-data是个好主意吗?一种替代方法就是手动在模型钩子中调用ajax调用,并且只在必要时创建Ember对象?
顺便说一句,让我们假设我们必须在这种情况下使用Ember。这里有趣的问题是我们是否可以通过不使用ember-data来获得性能提升?或者,如果我们需要使用ember-data来获得优势,那么我们可以做的通常优化是什么?