Ich habe einen Redis-basierten SessionStateStoreProvider erstellt die auf GitHub mit ServiceStatck.Redis gefunden werden kann als Client (anstelle von Booksleeve).
Es kann über NuGet mit Install-Package Harbour.RedisSessionStateStore installiert werden .
Ich habe ein paar Macken bei @NathanDs Ansatz gefunden. In meiner Implementierung werden Sperren mit gespeichert der Sitzungswert statt in einem separaten Schlüssel (weniger Roundtrips zu Redis). Außerdem, weil es ServiceStack.Redis verwendet , es können gepoolte Verbindungen verwendet werden.
Endlich wird getestet. Das war meine größte Abkehr von @NathanDs Herangehensweise. Es gab keine Möglichkeit, eigentlich zu wissen, ob es funktioniert hat, ohne jeden Anwendungsfall manuell durchzugehen.