Я использую 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 не может подключиться к службе кэширования.
Кто-нибудь испытывал нечто подобное?
Спасибо,
С