NHibernate + AppFabric кеш - PullRequest
       8

NHibernate + AppFabric кеш

0 голосов
/ 10 января 2012

Я использую AppFabric в качестве поставщика кеша NHibernate 2L.

Я установил службу кеша AppFabric, настроил кластер кеша и один дополнительный кеш помимо стандартного:

<dataCache size="Small">
        <caches>
            <cache consistency="StrongConsistency" name="NHibernate">
                <policy>
                    <eviction type="Lru" />
                    <expiration defaultTTL="10" isExpirable="true" />
                </policy>
            </cache>
            <cache consistency="StrongConsistency" name="default">
                <policy>
                    <eviction type="Lru" />
                    <expiration defaultTTL="10" isExpirable="true" />
                </policy>
            </cache>
        </caches>
        <hosts>
            <host replicationPort="22236" arbitrationPort="22235" clusterPort="22234"
                hostId="963417840" size="2047" leadHost="true" account="ZEUS\CATALINP"
                cacheHostName="AppFabricCachingService" name="ZEUS"
                cachePort="22233" />
        </hosts>
</dataCache>

Все выглядит нормально на стороне провайдера кэша.

Конфигурация клиента кэша, используемая в app.config, следующая:

<dcacheClient localCache ="True" deployment="simple">
    <localCache isEnabled="True" sync="TimeoutBased" ttlValue="300" />
    <hosts>
      <host name="ZEUS" cachePort="22233" cacheHostName="AppFabricCachingService"/>
    </hosts>
  </dcacheClient>

Ничего особенного, только общие настройки.

Тем не менее, когда я запускаю приложение, я вижу следующий вывод в отладчике:

DeadServerCallback Called, URI сервера: net.tcp: // ZEUS: 22233 / AppFabricCachingService DeadServerCallback: Соответствует моему серверу, ожидающие очистки запросы SendMsgAndWait: Remote Операция сохранения не выполнена: msgId = 1 ExecuteAPI: Нулевой ответ, msgId = 1

Наконец приложение завершилось со следующим сообщением:

"ErrorCode: Cache :: Get: не удалось связаться с кешем оказание услуг. Свяжитесь с администратором и обратитесь к справочной документации по продукту. по возможным причинам. "

Кажется, что служба кэширования настроена правильно (мне удалось подключиться к ней с помощью команд Powershell), конфигурация NHibernate также выглядит правильно, но NHibernate не может подключиться к службе кэширования.

Кто-нибудь испытывал нечто подобное?

Спасибо,

С

1 Ответ

1 голос
/ 10 января 2012

Провайдер NHibernate Velocity не работает и не будет работать с AppFabric. См. этот вопрос для деталей, а затем перейдите здесь для поставщика s1mm0t для AppFabric.

...