【发布时间】:2011-12-06 21:42:43
【问题描述】:
我一直在玩 RavenDB(内部版本 531),但我似乎无法获得正确的性能。
我有一个简单的课程
public class Cat
{
public string Id {get; set;}
public string Name {get; set;
}
我随机创建了大约 200 只猫,并将它们放入 RavenDB。
但是当我去取一只猫时,通过
session.Load<Cat>("cats/<GUID>");
大约需要 700 毫秒。
RavenDB 的调试窗口如下所示
Request # 156: GET - **0 ms** - <default>-200-/docs/cats/<GUID>
它返回了正确的 Cat,但反序列化似乎需要很长时间。
我试图反序列化文件的输出,看看这是否真的是罪魁祸首,但我似乎不知道该怎么做。
想法?
编辑:我尝试只反序列化一个普通的旧 Cat 对象,它花了 100 毫秒。
Edit2:这是答案。
似乎有一些重要的启动成本。
如果我在第一个 Cat 之后获取任何其他 Cat,我的性能会显着提高 - 达到
因此你为什么不只使用一次获取进行基准测试。
【问题讨论】:
-
请发表您对该主题的发现并接受您的回答,以便它可以帮助处于相同情况的其他人。
标签: performance ravendb