Мы пытаемся уменьшить накладные расходы при запуске Fluent nHibernate.
Все статьи, которые мы видели по этой теме (включая эту ), предлагают следующие два предложения:
- Сохраните конфигурацию при первом запуске и восстановите ее впоследствии, а не создавайте заново.
- Убедитесь, что ISessionFactory создается только один раз за сеанс приложения.
Мы выполнили оба этих действия, и время запуска Fluent nHibernate для создания фабрики сеансов теперь составляет около 550 мс в двухпроцессорной 64-битной системе Windows 7 с частотой 2,8 ГГц и бэкэндом SQLite. В настоящее время существует только четыре объекта, каждый из которых имеет в среднем около шести свойств.
Это все еще слишком высоко. Мы хотели бы сократить это время до 20 мс или меньше (чтобы даже на медленных системах оно составляло менее 100 мс). Есть ли вероятность, что мы сможем это сделать?
Любое понимание того, что делает Fluent nHibernate во время запуска, которое также занимает много времени, также поможет.