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 для веб-сайтов и проектов"

Редактирование реестра не требуется.

Другие вопросы по тегам