Кэш AppFabric - существующее соединение было насильственно закрыто удаленным хостом

Я пытаюсь разбудить кэш AppFabric и работаю на своей локальной среде разработки. Мне установили бета 2 Windows Server AppFabric Обновление и кластер кэша и размещаю настроенный и начал работать на 64-разрядном Windows 7. Я выполняю свой веб-сайт MVC2 в локальном веб-сайте IIS под v4.0 пулом приложений в интегрированном режиме.

HostName : CachePort      Service Name            Service Status Version Info
--------------------      ------------            -------------- ------------
SN-3TQHQL1:22233          AppFabricCachingService UP             1 [1,1][1,1]

Мне настроили мой web.config со следующим:

  <configSections>
        <section name="dataCacheClient" type="Microsoft.ApplicationServer.Caching.DataCacheClientSection, Microsoft.ApplicationServer.Caching.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" allowLocation="true" allowDefinition="Everywhere"/>
   </configSections>

   <dataCacheClient>
       <hosts>
           <host name="SN-3TQHQL1" cachePort="22233" />
       </hosts>
   </dataCacheClient>

Я получаю ошибку, когда я пытаюсь инициализировать DataCacheFactory:

    protected CacheService()
    {
        _cacheFactory = new DataCacheFactory(); <-- Error here
        _defaultCache = _cacheFactory.GetDefaultCache();
    }

Я получаю ASP.NET желтый ошибочный экран со следующим:

Существующее соединение было насильственно закрыто удаленным хостом

Описание: необработанное исключение произошло во время выполнения текущего веб-запроса. Рассмотрите отслеживание стека для получения дополнительной информации об ошибке и где это произошло в коде.

Детали исключения: Система. Сеть. Сокеты. SocketException: существующее соединение было насильственно закрыто удаленным хостом

Исходная ошибка:

Line 21:         protected CacheService()
Line 22:         {
Line 23:             _cacheFactory = new DataCacheFactory();
Line 24:             _defaultCache = _cacheFactory.GetDefaultCache();
Line 25:         }
7
задан Wallace Breza 14 May 2010 в 21:06
поделиться

2 ответа

У меня тоже была похожая проблема, и моя проблема заключалась в том, что я не дал надлежащие разрешения клиенту кеширования. Чтобы быстро убедиться, что это проблема, я бы предоставил всем аккаунтам доступ к кешу. Если это решит проблему, попробуйте ограничить доступ к соответствующей учетной записи, а не всем. Это можно сделать, выполнив следующую команду через «Администратор кэширования Windows PowerShell», который находится в папке меню запуска Windows Server AppFabric:

Grant-CacheAllowedClientAccount everyone
14
ответ дан 6 December 2019 в 11:46
поделиться

Получаете ли вы ту же проблему, если используете объект DataCacheFactoryConfiguration? например

protected CacheService()
{
    DataCacheFactoryConfiguration config;
    List<DataCacheServerEndpoint> endpoints;
    DataCacheFactory factory;
    DataCache cache;

    endpoints = new List<DataCacheServerEndpoint>();
    endpoints.Add(new DataCacheServerEndpoint("SN-3TQHQL1",22233));

    config = new DataCacheFactoryConfiguration();
    config.Servers = endpoints;

    factory = new DataCacheFactory(config);

    cache = factory.GetDefaultCache();
    ...
}

Открыли ли вы порт в брандмауэре?

Возможно, проверьте записи в журнале событий - они могут дать подсказки о том, что происходит (или не происходит).

1
ответ дан 6 December 2019 в 11:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: