2010-10-08 13 views
9

He instalado AppFabric en el servidor. He creado un clúster de una sola computadora. También he creado un caché llamado "Gagan". utilizaron los siguientes comandos con el finAppFabric ErrorCode <ERRCA0017><ES0006>:

Uso-CacheCluster -Proveedor xml -ConnectionString \ NB-GJANJUA \ Cache Start-CacheCluster

El resultado es que el servicio de caché está en funcionamiento .so ahora todo va bien.

I a continuación, configurar mi archivo web.config, como a continuación

<?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> 

Pero tan pronto como pongo en marcha mi sitio, que viene con este error

analizador de mensajes de error: Código de error: SUBSTATUS: Hay una falla temporal. Vuelva a intentarlo más tarde. (Uno o más servidores de caché especificados no están disponibles, lo que podría ser causado por una red o servidores ocupados. Asegúrese de que se haya otorgado permiso de seguridad para esta cuenta cliente en el clúster y permita que AppFabric Caching Service a través del firewall en todos los hosts de caché. de nuevo más tarde)

Error de origen:.

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> 

¿hay algo que me falta?

Nota: Ya he referenciado al Microsoft.ApplicationServer.Caching.Client y las asambleas Microsoft.APplicationServer.Caching.Core

Gracias por su tiempo y paciencia

con respecto Gagan Janjua

+1

Realmente no sé por qué no se muestra toda la configuración .xml aquí – Gagan

+1

< modules runAllManagedModulesForAllRequests = "true" /> Gagan

Respuesta

2

¿Ha otorgado acceso a la memoria caché para cualquier usuario que esté ejecutando su sitio web?

Grant-CacheAllowedClientAccount Gagan

+4

He desactivado la seguridad tanto en mi nivel de servidor como en mi nivel de cliente – Gagan

4

que tenía un problema similar, que ejecuta IIS 7.5 en Windows Server 2008 R2. Lo resolví emitiendo los siguientes comandos de PowerShell (iniciado desde la carpeta de Windows AppFabric en Inicio, Todos los programas):

Nueva-caché -CacheName NameOfCacheAsSetInWebConfig -TimeToLive 30
Grant-CacheAllowedClientAccount "IIS AppPool \ NameOfAppPoolRunningSite"

Una vez que lo hice, estaba todo listo.

1

Tuve este problema y fue solo que el clúster de caché no funcionaba después de reiniciar. No me di cuenta de que tienes que cambiar manualmente el servicio para que comience automáticamente en los servicios. La información detallada al respecto es here.

2

He resuelto este problema de la siguiente manera:

gestor de lanzamiento de tareas de Windows y el aviso bajo qué usuario Nombre su w3wp.exe se está ejecutando?

En mi caso fue: ASP.NET v4.0

Lanzado en Inicio -> Todos los programas -> Servidor de aplicaciones de Windows Tela -> Administrador de IIS

En IIS, seleccione el nombre de la máquina y luego grupos de aplicaciones en la parte superior a mano izquierda.

En grupos de aplicaciones ... Compruebe que ASP.net v4.0 existe en Grupos de aplicaciones.

Lanzado en Inicio -> Todos los programas -> Servidor de aplicaciones de Windows Tela -> Shell de administración de Caching de energía de Windows

Escriba el siguiente comando en el símbolo: Grant-CacheAllowedClientAccount "v4.0 ASP.NET"

reiniciar la aplicación web y el error siguiente se fue:

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.) 
8

también estaba teniendo este error. Sólo para probar el cliente en el desarrollo Apagué la seguridad mediante el uso de comandos Power Shell AppFabric

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

Ajuste también siguiendo en aplicación cliente en web.config

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

Esto no es escenario de producción, pero desaparece el error anterior cuando estas configuraciones son aplicadas

1

comentarios a la siguiente en la configuración fija para mí:

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

Esto efectivamente lo desactiva sabio de AppFabric, FYI. – Brady

0

Por defecto, los procesos de trabajo se configurará como un usuario de IIS, los usuarios necesitan tener acceso. En su administración de Caching Windows PowerShell escriba el siguiente

Grant-CacheAllowedClientAccount IIS_IUSRS