У меня есть сайт asp.net-mvc3 с использованием nhibernate и SQL-сервера. У меня есть 2 веб-сервера, которые загружаются сбалансированными. Это прочитанный тяжелый db (который не так сильно зависит от производительности записи), но по мере того, как запросы становятся все более и более сложными (большое количество таблиц присоединяется), он значительно замедляет работу.Может ли Ncache Express решить эту проблему с масштабируемостью или мне нужно будет перейти на премьер-версию?
Основываясь на комментариях, которые я читал, самой большой победой было бы поставить распределенный кеш спереди. Я просмотрел бесплатные опции в окнах, поддерживающих nhibernate и I found NCache Express. Я собираюсь, очевидно, сделать кучу тестирования и игры, но я хотел видеть (до того, как я потратил много времени), если бы это экспресс-версии ограничивали меня вообще с точки зрения работоспособных решений. Я вижу сравнения версий здесь, и я не думаю, что вижу каких-либо блокировщиков, но хотел получить обратную связь от тех, кто использовал NCache Express с nhibernate, чтобы узнать, есть ли какие-либо проблемы.
Кроме того, если есть альтернативные предложения продуктов для более эффективного решения этой проблемы, это было бы замечательно.
Прежде чем перейти к любому решению кэширования, я настоятельно рекомендую тщательно оптимизировать структуру базы данных (модель данных, индексирование, инструкции SQL, планы запросов) ... использовать профилировщик, чтобы найти какие-либо узкие места в приложении и действовать соответствующим образом. .. проверьте HW (DB-сервер, производительность сети и т. д.). ЕСЛИ действительно ВСЕ оптимизирован, и вы все еще недовольны работой THEN, проверяя кеширование ... – Yahia
Вы пытались кэшировать результаты своих запросов с помощью механизма кэширования ASP.NET? Этого было недостаточно? В любом случае, если вам нужно много соединений в таблице, вы, вероятно, используете неправильную схему для своего конкретного случая. Возможно, вам нужно денормализовать свои таблицы, чтобы уменьшить количество подключений. –