Моему приложению Flutter требуется счетчик прокрутки (1, 2, 3, ..., 98, 99, 1, 2, 3 ...). Учитывая, что может быть несколько приложений Flutter, запрашивающих и увеличивающих Rolling Counter , я думаю, что имеет смысл управлять счетчиком с помощью Cloud Function (я обычно использую TypeScript). (Обратите внимание, что я также использую Cloud Firestore и Realtime Firebase , если это помогает.)
Я могу легко создать облачную функцию Google, которая использует что-то вроде FieldValue.increment
для увеличения счетчика. Меня беспокоит, что атомарно получает значение и затем увеличивает его таким образом, чтобы параллелизм не создавал проблем. Стратегии, ограничивающие затраты на чтение / запись документов, также могут быть привлекательными.
Что такое хорошая стратегия?