Frage

Ich versuche AppFabric Cache aufstehen und laufen auf meinem lokalen Entwicklungsumgebung. Ich habe Windows Server AppFabric Beta 2 Refresh installiert ist, und der Cache-Cluster und Host konfiguriert und gestartet läuft auf Windows 7 64-bit. Ich meine MVC2 Website in einer lokalen IIS-Website unter v4.0 app-Pool in integriertem Modus ausgeführt wird.

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

Ich habe meine web.config wie folgt konfiguriert:

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

Ich erhalte eine Fehlermeldung, wenn ich die DataCacheFactory zu initialisieren versuchen:

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

Ich erhalte den ASP.NET gelben Fehler-Bildschirm mit dem folgenden:

Eine vorhandene Verbindung wurde vom Remotehost geschlossen

Beschreibung: Eine nicht behandelte Ausnahme trat während der Ausführung der aktuellen Webanforderung. Überprüfen Sie die Stapelüberwachung, um weitere Informationen über den Fehler und wo es im Code verursacht.

Ausnahmedetails: System.Net.Sockets.SocketException: Eine vorhandene Verbindung wurde vom Remotehost geschlossen

Quellfehler:

Line 21:         protected CacheService()
Line 22:         {
Line 23:             _cacheFactory = new DataCacheFactory();
Line 24:             _defaultCache = _cacheFactory.GetDefaultCache();
Line 25:         }
War es hilfreich?

Lösung

Ich hatte ein ähnliches Problem wie gut, und mein Problem war, ich die richtigen Berechtigungen für das Cache-Client nicht gegeben hatte. Um dies zu schnell zu überprüfen, ist die Frage, die ich das Konto Jeder Zugriff auf den Cache gewähren würde. Wenn diese Korrekturen sieht das Problem dann in dem Zugriff auf das entsprechende Konto zu begrenzen, anstatt alle. Dies kann über das „Caching Administrator Windows Powershell“ den folgenden Befehl getan Ausführung, die in dem Windows Server AppFabric Startmenü-Ordner gefunden wird:

Grant-CacheAllowedClientAccount everyone
scroll top