2010-08-05 11 views
14

Ein kleiner Hintergrund: Ich verwende derzeit Memcached Providers für die Verwaltung des Sitzungsstatus in meiner ASP.NET-Anwendung. Es bietet Möglichkeiten zur Verwendung von SQL Server als Fallback-Speichermechanismus (wenn Sitzungen aus dem memcached-Cache gelöscht werden müssen). Ich würde gerne einen Anbieter für RavenDB erstellen, da es für diese Art von Aufgabe viel leistungsfähiger wäre.RavenDB ASP.NET-Sitzungsanbieter?

Meine Frage ist, hat jemand so etwas implementiert? (oder etwas ähnliches?) - Ich würde es hassen, das Rad neu zu erfinden. Google liefert keine hilfreichen Ergebnisse (außer my question darüber in der RavenDB-Gruppe selbst), also dachte ich, ich würde diese Frage direkt an die Stack Overflow-Community stellen.

+0

Also Sie suchen, SQL Server durch RavenDB zu ersetzen, aber haben Sie noch den Memcached dort? Oder Sie möchten Memcached durch RavenDB ersetzen. Ich frage mich nur, welcher eine bessere Leistung für den Sitzungsstatus bietet. Vielen Dank. – Tigran

+0

Ich ging tatsächlich mit Couchbase und Verwendung ihrer Aspnet-Provider-Implementierung (für Sitzungsstatus und Ausgabe-Cache): https://github.com/couchbatelabs/couchbase-aspnet – DanP

Antwort

18

ich auch suchte einen RavenDB Sitzungszustandsspeicher, und meine Suche auch gescheitert. So

Ich habe ein:

github.com/mjrichardson/RavenDbSessionStateStoreProvider

Auch über eine NuGet package.

+0

Nuget-Paket scheint mit NewtonSoft Json 4.5.6 inkompatibel zu sein. Nuget versucht, von 4.5.6 zu "updaten". zu 4.0.8 ... –

+0

[Es ist das RavenDB.Client-Paket, das nicht kompatibel ist] (http://ayende.com/blog/157505/ravendb-1-0-amp-newtonsoft-json-4-5-7). Laut Ayendes Beitrag sollten Sie in der Lage sein, Ihr Problem zu lösen, indem Sie auf [Version 1.0.971 von RavenDB.Client] (http://nuget.org/packages/RavenDB.Client/1.0.971) verweisen. –

3

Nicht so weit ich weiß. RavenDB ist ziemlich aktives Projekt und Memcached ist seit 2 Jahren praktisch tot und blieb 32-Bit. Sie könnten nur besser dran RavenDB unter IIS

OK läuft, so Code-weise ist es nicht kleiner als diese - einzelne Datei: http://sourceforge.net/projects/aspnetsessmysql/files/MySqlSessionStateStore.cs/download

+0

Danke für die Eingabe, aber Memcached ist nicht wirklich das Problem hier ... allgemeiner, ich frage nach dem Erstellen eines Sitzungsanbieters für RavenDB. Der memcached-Anbieter bietet lediglich eine Beispielimplementierung, wie dies funktionieren könnte. – DanP

+0

Sie suchen also nach einem relativ kleinen Quellcode für einen ASP.NET-Sitzungsanbieter, der mit einer anderen DB kommuniziert, damit Sie sie für RavenDB ändern können? Unles Sie sind total gegen das Schreiben von Code :-) – ZXX

3

RavenDB bietet eine Session Ablauf Bündel, das bedeutet, dass Dokumente nach gelöscht eine bestimmte Lebensdauer Dies ist ideal für den Einsatz als Session und bedeutet, dass Ihre gesamte Aggregat Wurzel aus RavenDB abgerufen werden, was bedeutet, viel sauberen Code: RavenDb Expiration Bundle