connect-redis - как защитить объект сеанса от состояния гонки

Я использую nodejs с connect-redis для хранения данных сеанса.

Я сохраняю пользовательские данные в сеансе и использую их в течение времени жизни сеанса.

Я заметил, что возможно иметь состояние гонки между двумя запросами, которое изменяет данные сеанса.

Я пытался использовать redis-lock для блокировки сеанса, но это немного проблематично для меня.

Я не хочу блокировать весь сеанс, а вместо этого блокировать только определенную переменную сеанса.

Я нашел это невозможным, и я подумал о направлении, чтобы решить это:

прекратить использование объекта сеанса для хранения пользовательских данных и сохранить переменную непосредственно в Redis и заблокировать перед ее использованием.

Я знаю, что это может работать, но для этого потребуется, чтобы я управлял всеми объектами вручную, а не просто обращался к redis через объект сеанса.

Не могли бы вы поделиться со мной лучшей практикой и вашими предложениями?

Спасибо, Лиор

Ответы на вопрос(1)

Ваш ответ на вопрос