стопку файлов. Он запихивает их в Mongo GridFS по очереди, получает айдишники от БД, и кидает их в RabbitMQ на обработку(чтобы не гонять через RabbitMQ сами многометровые файлы). Дык вот, на загрузке n-ного файла может случиться бяка, RabbitMQ недоступна, максимальная длительность запроса превышена, тому подобное. Это нормально обрабатывается, еррор сервак мне возвращает. Но в итоге у меня в Монге подвисают файлы с запроса, который как бы уже не нужен и их надо бы почистить(а в нормальной ситуации их чистят консьюмеры RabbitMQ)... Где бы почитать(особенно порадует со ссылками на гитхаб), как решать эту проблему? Я так понимаю, что мне надо всё это обернуть в некое подобие транзакции с роллбеком и коммитом... Или я сильно страдаю хернёй?
Надеюсь, это не один инстанс монги 😂
А что такого? Это мой мелкий пет-проект, потыкать пальчиками во всё это) Тут критична именно обработка файла, на моём 8700К она занимает 5-10 минут и процентов 50-70 проца, а я хочу запустить это всё моих малинках... Всё остальное - мелочи, в день там будет десятка три запросов по 30-40 мелких файлов, думаю, монга справится с такой тяжелой работой. Или я тебя не понял.
сорян, но больно полотно воспринимать.. пытаюсь вычитывать и оч ай
Как вариант можно роллбэк написать, см. паттер saga https://microservices.io/patterns/data/saga.html
Обсуждают сегодня