нас есть некая запись в таблице БД и мы хотим отдать ее пользователю, но не хотим чтобы другой пользователь ее получил до тех пор пока первый не закончит с ней работу. В качестве простейшей реализации я привел возможность использовать redis для межпроцессной блокировки и со мной согласились. Однако мне кажется что должен быть подход лучше. Как минимум у нас появляется блокировка о которой надо знать и которую надо захватывать, хоть и на уровне бизнес-логики. Может есть способ лучше?
Можно на уровне БД лочить, но вариант с редисом мне нравится больше
про БД я знаю и там же объяснил чем плох вариант - мы можем хотеть иметь возможность читать внутри приложения.
А почему у тебя такой возможности не будет?
а так можно сделать? Т.е. чтобы и внутри приложения читать, но вот конкретную запись залочить с точки зрения бизнес-логики? Именно через субд.
А как это через рэдис работает? Вот так же через базу. У тебя юзер а не штука с коннектом к базе. В любом случае Лок это ещё одна запись которая говорит кто с чем работает
Обсуждают сегодня