我们正试图减少Fluent nHibernate启动开销。
我们在这个主题上看到的所有文章(包括this one)都提出以下两点建议:
我们已经完成了这两项工作,并且在一个带有SQLite后端的双进程2.8Ghz 64位Windows 7系统上,创建会话工厂的Fluent nHibernate启动时间现在大约为550ms。目前只有四个实体,平均每个实体约有六个。
这仍然太高了。我们希望将此时间缩短到20ms或更短(因此即使在慢速系统上也不会超过100ms)。我们有可能做到这一点吗?
任何关于Fluent nHibernate在启动过程中所做的事情的深入了解也会有所帮助。
答案 0 :(得分:0)
您可以使用管理SessionFactory的WCF服务。由于这与您的应用程序无关,因此创建SessionFactory不会影响启动时间。当然,这确实会带来许多其他复杂性(延迟加载),但它确实解决了启动时间问题,因为当您启动应用程序时服务已经运行。