AppFabric ErrorCode: - PullRequest
       4

AppFabric ErrorCode:

10 голосов
/ 08 октября 2010

Я установил AppFabric на сервер.Я создал кластер из одного компьютера.Я также создал кэш с именем "Gagan".использовали следующие команды по порядку

Use-CacheCluster -Provider xml -ConnectionString \ NB-GJANJUA \ Cache Start-CacheCluster

В результате служба кэширования работает и работает .. пока такхорошо.

Затем я настраиваю свой файл web.config, как показано ниже

<?xml version="1.0"?>
<configuration>
    <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>

<!-- cache client -->
<dataCacheClient>
<!-- cache host(s) -->

<hosts>
  <host
     name="NB-GJANJUA.com"
     cachePort="22233"/>
</hosts>
</dataCacheClient>

<system.web>    

<compilation debug="true" targetFramework="4.0" >
    <assemblies>
      <add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
      <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
      <add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
      <add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
      <add assembly="Microsoft.ApplicationServer.Caching.Client, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
      <add assembly="Microsoft.ApplicationServer.Caching.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
    </assemblies>
</compilation>

<sessionState mode="Custom" customProvider="SessionStore" cookieless="true">
  <providers>
    <add name="SessionStore" type="Microsoft.ApplicationServer.Caching.DataCacheSessionStoreProvider" cacheName="Gagan" />
  </providers>
</sessionState>
</system.web>

<system.webServer>
 <modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
</configuration>

Но как только я запускаю свой сайт, появляется эта ошибка

Сообщение об ошибке анализатора:ErrorCode: SubStatus: временный сбой.Пожалуйста, попробуйте позже.(Один или несколько указанных серверов кэша недоступны, что может быть вызвано загруженностью сети или серверов. Убедитесь, что для этой учетной записи клиента в кластере предоставлено разрешение безопасности и что служба кэширования AppFabric разрешена через брандмауэр на всех хостах кэша.Повторите попытку позже.)

Ошибка источника:

Line 44:     <sessionState mode="Custom" customProvider="SessionStore" cookieless="true">
Line 45:       <providers>
Line 46:         <add name="SessionStore" type="Microsoft.ApplicationServer.Caching.DataCacheSessionStoreProvider" cacheName="Gagan" />
Line 47:       </providers>
Line 48:     </sessionState>

Есть ли что-то, чего мне не хватает?

Примечание. Я уже ссылался на Microsoft.ApplicationServer.Caching.Client.и сборки Microsoft.APplicationServer.Caching.Core

Спасибо за ваше время и терпение

С уважением, Гаган Джанджуа

Ответы [ 7 ]

9 голосов
/ 01 декабря 2012

У меня тоже была эта ошибка.Чтобы протестировать клиента в разработке, я отключил безопасность с помощью команды AppFabric Power Shell

   Stop-CacheCluster
   Set-CacheClusterSecurity -SecurityMode None -ProtectionLevel None
   Start-CacheCluster

Также установите следующее в клиентском приложении в web.config

   <dataCacheClient>
     <securityProperties mode="None" protectionLevel="None"/>
   </dataCacheClient>

Это не рабочий сценарий, новышеуказанные ошибки исчезают при применении этих настроек.

4 голосов
/ 22 августа 2011

У меня была похожая проблема при запуске IIS 7.5 на Windows Server 2008 R2.Я решил эту проблему, введя в PowerShell следующие команды (запущенные из папки Windows AppFabric в меню «Пуск», «Все программы»):

New-Cache -CacheName NameOfCacheAsSetInWebConfig -TimeToLive 30
Grant-CacheAllowedClientAccount «Name IIS AppPoolPolOISO»"

Как только я это сделал, у меня все было готово.

3 голосов
/ 09 ноября 2012

Я решил эту проблему следующим образом:

Запустите диспетчер задач Windows и обратите внимание, под каким именем пользователя работает ваш w3wp.exe?

В моем случае это было: ASP.NET v4.0

Запущен Пуск -> Все программы -> Windows Server App Fabric -> Диспетчер IIS

В IIS выберитеИмя компьютера, а затем пулы приложений в верхнем левом углу.

В пуле приложений ... Убедитесь, что ASP.net v4.0 существует в пуле приложений.

Запущенный запуск -> Все программы -> WindowsServer App Fabric -> Администрирование кэширования Windows Power Shell

Введите в командной строке следующую команду: Grant-CacheAllowedClientAccount "ASP.NET v4.0"

перезапустил веб-приложение и послеошибка исчезла:

ErrorCode<ERRCA0017>:SubStatus<ES0006>:There is a temporary failure. Please retry later. (One or more specified Cache servers are unavailable, which could be caused by busy network or servers. Ensure that security permission has been granted for this client account on the cluster and that the AppFabric Caching Service is allowed through the firewall on all cache hosts. Retry later.)
3 голосов
/ 12 октября 2010

Предоставили ли вы доступ к кешу любому пользователю вашего сайта?

Grant-CacheAllowedClientAccount Gagan

1 голос
/ 09 января 2013

Комментарий в конфиге исправил это для меня:

<sessionState customProvider="AppFabricCacheSessionStoreProvider" mode="Custom" timeout="90">
  <providers>
    <add name="AppFabricCacheSessionStoreProvider" type="Microsoft.ApplicationServer.Caching.DataCacheSessionStoreProvider" cacheName="Session" sharedId="SharedApp" />
  </providers>
</sessionState>
1 голос
/ 05 января 2012

У меня была эта проблема, и это было просто из-за того, что Cache Cluster не работал после перезагрузки.Я не осознавал, что вам нужно вручную переключать службу для автоматического запуска в службах.Подробная информация об этом здесь .

0 голосов
/ 03 апреля 2014

По умолчанию рабочие процессы будут настроены как пользователь iis, которым эти пользователи должны иметь доступ.В вашем администрировании кэширования Windows Powershell введите следующее

Grant-CacheAllowedClientAccount IIS_IUSRS

...