Redis
 sql >> Datenbank >  >> NoSQL >> Redis

Was ist der Vorteil der Verwendung des benutzerdefinierten Backends für Gorilla-Sitzungen?

Gorilla-Sitzungen bieten eine Möglichkeit, ein Speichersystem für die Sitzungsverwaltung zu verdrahten, vorausgesetzt, Sie halten sich an die bereitgestellte Schnittstelle. Derzeit geben sie Ihnen zwei sofort einsatzbereite Geschäfte. Einer ist ein FilesystemStore, der sich an die Schnittstelle hält, die einfach sitzungsbasierte Daten im Dateisystem des Servers speichert und abruft. Der CookieStore als weitere Option liest und schreibt in das eingebaute Cookie-System des Browsers, um dasselbe mit anderen Mitteln zu erreichen.

Gorilla-Sitzungen haben wirklich nichts mit Redis zu tun, aber wenn Sie dies wissen, können Sie problemlos Ihren eigenen Sitzungsspeicher mit Gorilla verwenden, vorausgesetzt, Sie erstellen einen RedisStore, der sich an die Benutzeroberfläche des Gorilla-Sitzungsspeichers hält. Es hängt wirklich alles von Ihren Fähigkeiten ab und davon, was Sie in einem Session-Store-System suchen. Gorilla bietet Ihnen im Grunde zwei sofort einsatzbereite Optionen mit einer Option zum Bereitstellen Ihrer eigenen, die zu Ihrer App passt.

Wenn Sie auch dazu kommen, einen RedisStore zu erstellen, der mit Gorilla-Sitzungen arbeiten kann, sollten Sie erwägen, ihn Open Source zu machen, da dies eine großartige Bereicherung für die Go-Community wäre.

Sie müssen die Anforderungen und Leistungsanforderungen Ihrer App bewerten, um herauszufinden, welches Speichersystem verwendet werden soll. Warum macht Redis möglicherweise Sinn? Nun, wenn Sie eine App erstellen, die umfangreiche Schreib-/Modifikationen durchführt und diese Daten beibehalten werden müssen, ist Redis dafür bekannt, dass es Ihnen hilft, Ihre App zu skalieren, solange Sie sie richtig verwenden. Eine von Redis unterstützte Sitzung wird wirklich gut funktionieren, wenn Sie wissen, was Sie tun.

Letzter Punkt, sollten Sie Redis involvieren, sollten Sie dieses wunderbare Go-Paket in Betracht ziehen:Redigo als Ihre Redis-Client-Bibliothek.