AppFabric ErrorCode <errca0017> <es0006>:</es0006> </errca0017>

时间:2010-10-08 15:52:03

标签: appfabric appfabric-cache

我在服务器上安装了AppFabric。我创建了一台计算机的集群。我还创建了一个名为“Gagan”的缓存。 按顺序使用以下命令

Use-CacheCluster -Provider xml -ConnectionString \ NB-GJANJUA \ Cache 启动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程序集

感谢你的时间和耐心

关心 Gagan Janjua

7 个答案:

答案 0 :(得分:9)

我也遇到了这个错误。为了测试开发中的客户端,我使用AppFabric Power Shell命令

关闭了安全性
   Stop-CacheCluster
   Set-CacheClusterSecurity -SecurityMode None -ProtectionLevel None
   Start-CacheCluster

还在web.config中的客户端应用程序中设置以下内容

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

这不是生产方案,但应用这些设置时上述错误消失。

答案 1 :(得分:4)

我有一个类似的问题,在Windows Server 2008 R2上运行IIS 7.5。我通过在PowerShell中发出以下命令解决了这个问题(从“开始”,“所有程序”中的Windows AppFabric文件夹开始):

New-Cache -CacheName NameOfCacheAsSetInWebConfig -TimeToLive 30
Grant-CacheAllowedClientAccount“IIS AppPool \ NameOfAppPoolRunningSite”

一旦我这样做,我就完全了。

答案 2 :(得分:3)

您是否已授予您网站运行用户的缓存访问权限?

Grant-CacheAllowedClientAccount Gagan

答案 3 :(得分:3)

我解决了这个问题如下:

启动Windows任务管理器并注意您的w3wp.exe运行的用户名是什么?

就我而言,它是:ASP.NET v4.0

推出开始 - &gt;所有程序 - &gt; Windows Server App Fabric - &gt; IIS管理器

在IIS中,选择计算机名称,然后选择左上角的应用程序池。

在应用程序池中。验证应用程序池下是否存在ASP.net v4.0。

推出开始 - &gt;所有程序 - &gt; Windows Server App Fabric - &gt;缓存管理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.)

答案 4 :(得分:1)

我遇到了这个问题,只是重启后缓存群集已关闭。我没有意识到你必须手动切换服务才能在服务中自动启动。有关的详细信息是here

答案 5 :(得分:1)

在配置中注释掉以下内容为我修复了它:

<sessionState customProvider="AppFabricCacheSessionStoreProvider" mode="Custom" timeout="90">
  <providers>
    <add name="AppFabricCacheSessionStoreProvider" type="Microsoft.ApplicationServer.Caching.DataCacheSessionStoreProvider" cacheName="Session" sharedId="SharedApp" />
  </providers>
</sessionState>

答案 6 :(得分:0)

默认情况下,工作进程将设置为iis用户,这些用户需要访问权限。在缓存管理Windows Powershell 中键入以下

Grant-CacheAllowedClientAccount IIS_IUSRS