Атомная операция для сервисов AWS - PullRequest
0 голосов
/ 26 декабря 2018

У меня есть приложение, в котором я беру файлы на основе какого-либо события (SQS) и после некоторой бизнес-логики помещаю их в S3.Он работает в кластере ECS.

Я хочу, чтобы он был устойчивым, то есть даже в случае сбоя контейнера файлы не должны быть потеряны или не должны быть переопределены в S3.Это может произойти в случае сбоя контейнера и воспроизведения события SQS.Файл S3 будет переопределен.

Чтобы справиться с этим сценарием, я подумал о создании идемпотентной записи для файла, который уже был обработан, а затем PUT на S3.И перед действием PUT я всегда проверяю этот репо.Но что, если контейнер падает после создания идемпотентной записи и до события PUT.

Мне нужен способ, которым я могу гарантировать, что эти два события являются атомарными или они находятся в какой-то транзакции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...