۱۳۸۹/۱۰/۲۲

بالا بردن سرعت بارگذاري اوليه NHibernate


در زمان اولين بارگذاري NHibernate ، ساخت تمام نگاشت‌ها صورت گرفته و همچنين session factory ايجاد مي‌گردد. به همين جهت به كمك الگوي thread safe singleton نسبت به كش كردن آن در طول عمر يك برنامه استفاده مي‌گردد.
در برنامه‌اي كه در يك محيط كاري مورد استفاده قرار مي‌گيرد اين زمان اصلا مهم نيست، زيرا تنها يكبار بايد انجام شود. اما به عنوان يك برنامه نويس شايد در طول روز صدها بار نياز به باز و بسته كردن برنامه جهت آزمودن آن داشته باشيم و اين مورد پس از مدتي تبديل به عذاب مي‌شود! خوشبختانه امكان serialize نمودن تنظيمات توليدي session factory به فايل و سپس خواندن از آن نيز وجود دارد كه اين امر در حين توسعه‌ي برنامه بسيار ارزشمند است.
جهت مطالعه بيشتر مي‌توان به مطالب زير مراجعه كرد:

و حاصل تمام اين مقالات در پروژه‌ي Effectus، فايل Effectus\Infrastructure\BootStrapper.cs آن گردآوري شده است.