Задать вопрос
@accountnujen

Как организовать транзакции при записи в Google Drive?

Пользователь записывает (обновляет) файл. В теории два пользователя могут одновременно обновить файл, поэтому нужно как-то обезопаситься от этой ситуации. Использовать отдельный сервер для этого не могу.

Нужно какое-нибудь атомарное действие для блокировки диска на некоторое время. Я хочу застраховаться от обновления одного файла одновременно. ИИ долбал меня iF-Match - но это неактуально в нынешней API...

Какие могут быть варианты кроме колхозного варианта: застолбить (записать данные в) сервисный файл на диске и через условные 5-10 секунд прочесть его (его hash). Если текст тот же самый - ты заблокировал запись. Если информация другая - кто-то другой заблокировал запись.
  • Вопрос задан
  • 59 просмотров
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Нетология
    1C-программист: расширенный курс
    18 месяцев
    Далее
  • Яндекс Практикум
    Python-разработчик
    10 месяцев
    Далее
  • Skillbox
    Профессия 1С-программист
    8 месяцев
    Далее
Решения вопроса 1
@accountnujen Автор вопроса
Если кто наткнётся на вопрос. Решение в установке readonly, данная операция атомарна. Владелец файла может установить readonly и снять readonly, однако установить его дважды невозможно. Поэтому в случае гонки вы просто пытаетесь установить readonly и тот, у кого не было ошибки - победитель.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы