Я использую Sqlserver express 2008 (64 бит) на Windows Server 2012R2 с ОЗУ 56 ГБ.SQLServer Медленная производительность с более высокой оперативной памятью
У меня есть веб-приложение, написанное на C# asp.net MVC5, размещенном на IIS 8.5 64bit. Это приложение было размещено как 32-разрядное приложение, так как оно имеет другие 32-разрядные зависимости.
Извлечение данных происходит очень медленно, то есть требуется около 1,2 минут для запуска простого запроса, который возвращает 5 записей. Я настроил SQL SERVER мин памяти сервера до 8 Гб и максимум до 28 Гб (если это имеет значение, так как его экспресс-издание я не думаю, что это имеет значение)
Монитор ресурсов показывает следующую статистику:
- 6 , 82000 Виртуальная память
- 4,27,000 Работа виртуальной памяти
- 1467000 Sharable память
- 82000 Частная память
Проблема в том, что точно такая же настройка работает отлично в той же конфигурации с 8 ГБ ОЗУ.
У меня 2 вопроса:
Может ли это быть SQLSERVER узким местом? Если да, то как продолжить поиск неисправностей.
Имеет ли 32-разрядное приложение подключение к 64-битовому экземпляру sqlserver проблемы с производительностью? Должен ли я попробовать 32-разрядный экземпляр вместо этого.
В подобных случаях, было бы полезно, чтобы вы включили: запрос, который работает медленно, определение таблицы (ы) таблицы участвуют, какие индексы, созданные на столе (ов), план выполнения запроса. Также может быть, что ваши статистические данные устарели (смотрите онлайн, как их перестроить), или что ваши индексы фрагментированы слишком много (смотрите онлайн о том, как их перестроить). –