В чем преимущество использования пользовательских сессий Gorilla?

Я хочу использовать Redis для управления сессиями.
Но я не могу понять, в чем преимущество использования Redis в качестве пользовательского бэкенда для пакета сессий Gorilla по сравнению с его непосредственным использованием?

ссылка на пакет сеанса Gorilla: http://www.gorillatoolkit.org/pkg/sessions

1 ответ

Решение

Сеансы Gorilla предоставляют средства для подключения системы хранения к управлению сеансами, если вы придерживаетесь предоставленного интерфейса. В настоящее время они дают вам два магазина из коробки. Одним из них является FilesystemStore, который придерживается интерфейса, который просто хранит и извлекает данные на основе сеанса в файловой системе сервера. CookieStore, как еще одна опция, считывает и записывает во встроенную систему cookie браузеров, чтобы выполнить то же самое, используя другие средства.

Сеансы Gorilla на самом деле не имеют ничего общего с Redis, но, зная это, вы можете легко использовать собственное хранилище сессий с Gorilla, если вы создадите RedisStore, который соответствует интерфейсу хранилища сессий Gorilla. Все зависит от ваших возможностей и того, что вы ищете в системе хранилища сеансов. Gorilla в основном дает вам два варианта из коробки с возможностью предоставить свой собственный, который подходит для вашего приложения.

Кроме того, если вам удастся создать RedisStore, который может работать с сеансами Gorilla, подумайте о том, чтобы сделать его открытым исходным кодом, поскольку он станет отличным дополнением к сообществу Go.

Вы должны оценить потребности и требования к производительности вашего приложения, чтобы выяснить, какую систему хранения использовать. Почему Redis возможно имеет смысл? Хорошо, если вы создаете приложение, которое выполняет тяжелые записи / модификации и эти данные должны сохраняться, Redis, как известно, поможет вам масштабировать ваше приложение, если вы правильно его используете. Сессия с поддержкой Redis будет работать очень хорошо, если вы знаете, что делаете.

И последнее, если вы подключите Redis, подумайте об использовании этого замечательного пакета Go: Redigo в качестве клиентской библиотеки Redis.

Другие вопросы по тегам