2011-08-29 82 views
1

Mongoid查询速度很快。例如,如果它返回300个文档的查询需要大约10毫秒,但如果我做Mongoid查询很快,但转换为结果需要时间

to_a或要获得结果的条目需要时间。

有没有其他方法可以减少时滞。

+0

您可以使用'each'而不是'to_a',因为这将使用底层的mogodb游标并一次分配一个对象,这将粗略地评估为使用较小的内存占用量。虽然我不确定它是否会加快速度。 – rubish

回答

2

我还没有看源代码,但Mongoid查询是lazily evaluated

这意味着,您第一次调用条件时不会触及数据库,而当您执行'to_a'或'条目'时,Mongoid实际上会获取数据,因此时间滞后。