IIS Express - увеличить лимит памяти
У меня есть проект VS в.NET MVC5, который загружает внешний файл DLL, который использует много памяти. В среднем он использует от 500 до 1000 МБ памяти.
Теперь, когда я пытаюсь отладить свой проект с сервером IIS Express по умолчанию, я почти всегда получаю исключение OutOfMemory.
Я знаю, что для нормального IIS есть флаг /3gb, но как насчет IIS Express? Есть ли какие-либо настройки, чтобы я мог включить это, или есть какое-то иное решение этой проблемы, кроме установки полного IIS на ПК для разработки?
PS: ПК разработчика имеет Windows 8.1 64x и Visual Studio 2013.
2 ответа
И Cassini, и IISExpress по умолчанию работают как 32-разрядные... Visual Studio 2012 можно настроить на использование 64-разрядных IIS Express, добавив / установив следующий раздел реестра:
reg add HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\11.0\WebProjects /v Use64BitIISExpress /t REG_DWORD /d 1
IIS Express 8 и выше поддерживает оба режима. Лучше всего использовать приложение, например, проводник процессов, после внесения изменений в реестр, чтобы проверить процесс IISExpress и убедиться, что он запущен из 64-разрядного расположения. При установке IIS 8.0 Express в 64-разрядной системе 32-разрядная и 64-разрядная версии IIS 8.0 Express будут установлены соответственно в "%ProgramFiles(x86)%\IIS Express" и "%ProgramFiles%\". IIS Express "папки.
Кроме того, вы можете установить IIS локально и настроить его для запуска приложения. Вы можете настроить Visual Studio для указания на локальный экземпляр IIS.
Зайдите в Visual Studio - Инструменты - Меню параметров
Выберите: - Проекты и решения, затем Веб-проекты
поставьте галочку: "Использовать 64-битную версию IIS Express для веб-сайтов и проектов"
Редактирование реестра не требуется.