Настройка NCache с помощью nHibernate и Castle ActiveRecord - PullRequest
2 голосов
/ 04 июня 2009

У нас есть относительно зрелый веб-сайт, использующий ActiveRecord Касла в качестве шаблона персистентности (вместе с nHiberante). Мы использовали кеширование с одним узлом и поэтому могли полагаться на встроенный кеш ASP.Net и просто использовать тег Cache ActiveRecord на наших сущностях ([ActiveRecord(Cache = CacheEnum.ReadWrite)]). Это прекрасно работает, и NHProf подтвердил, что мы используем кэш 2-го уровня.

Сейчас мы переходим к x-узлам и нам нужен кеш, который может синхронизироваться между несколькими узлами. Мы тестируем nCache, и я настроил его (счетчики perfmon показывают, что тестовые добавления кэша были успешными). Однако после изменения файла web.config и добавления ссылок на мое приложение (для раздела config) все выглядит хорошо.

Однако счетчики перфорации не двигаются, когда я перемещаюсь по сайту. Во всех документах упоминается индивидуальный

<ncache><class></class></ncache>

настройки для каждого класса, который будет кэшироваться. Очевидно, я хотел бы использовать разметку ActiveRecord, которая будет использоваться для этого.

И, наконец, к вопросу - кто-нибудь знает, использует ли NCache теги кеша ActiveRecord или мне нужно использовать web.config для определения стратегии кеширования? Я действительно хочу использовать теги ActiveRecord ....

1 Ответ

3 голосов
/ 04 июня 2009

Хорошо, я нашел несколько ответов и ошибок, и самое главное, теперь это работает, так что вот несколько советов, которые люди могут найти полезными:

  • ActiveRecord Cache работает абсолютно нормально с NCache, никаких изменений не требуется.
  • NCache в настоящее время поставляется с nHibernate 1.2 и построен на .Net 2.0

У нас есть кастомная версия (из замкового сундука) nHibernate. Мы также используем .Net3.5. В результате нам пришлось:

  • Добавление источника адаптера NCache nHibernate
  • Перенос кода на 3,5 (с некоторыми незначительными поправками)
  • Обновить файл конфигурации

Вот и все. У Perfmon тикеры NCache переключаются, когда мы посещаем сайт. Потрясающе.

При необходимости я могу отправить код, просто дайте мне знать.

Все благодаря http://www.alachisoft.com/forum/index.php?showtopic=18488

...