У нас есть приложение ASP.NET, построенное на основе MonoRail и NHibernate, и я заметил странное поведение между ними при работе с 64-битным или 32-разрядным режимом. Все скомпилировано как AnyCPU и отлично работает с обоими режимами, но использование памяти сильно отличается.
Посмотрите на следующие снимки из ANTS:
32bit_snapshot:
против
64bit_snapshot:
Сценарий использования для обоих снимков в значительной степени эквивалентен (я попал на те же страницы на обоих запусках).
Во-первых, почему неиспользуемая память настолько высока в 64-битном режиме? И почему неуправляемая память будет в 4 раза больше в 64-битном режиме?
Любое понимание этого было бы действительно полезно.