Подтвердить что ты не робот

IIS Express - предел памяти для инкремента

У меня есть проект VS в .NET MVC5, который загружает внешний DLL файл, который использует много памяти. В среднем он использует память 500-1000 МБ.

Теперь, когда я пытаюсь отладить мой проект с сервером IIS Express по умолчанию, я почти всегда получаю исключение OutOfMemory.

Я знаю, что для обычного IIS есть флаг /3gb, но что касается IIS Express. Существуют ли какие-либо настройки, поэтому я могу включить это или есть ли какое-либо другое решение этой проблемы, кроме установки полного IIS на компьютере разработки?

PS: ПК для разработчиков имеет Windows 8.1 64x и Visual Studio 2013.

4b9b3361

Ответ 1

Как 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.

Ответ 2

Перейти к Visual Studio - Инструменты - Меню настроек

Выберите: - Проекты и решения, затем веб-проекты

отметьте галочкой флажок: "Пользователь 64-разрядной версии IIS Express для веб-сайтов и проектов"

Нет необходимости в редактировании реестра.