CRUD и тяжелые вычислительные операции с длительностью 10-60 секунд с использованием @Query и не только.
Если систему оставить так, как есть, то если во время вычислений будет Create, Update или Delete, вычисления получатся неправильными (некоторая часть будет на базе старой информации)
и нужно будет выкинуть результаты и начать заново.
Если систему разделить на 2 модуля через очереди, то между ними будет большой трафик и надо будет сделать механизм отмены вычислений, чтоб впустую не тратить ресурсы. Можно конечно отправить только те части, которые изменились, но тогда нужно в вычислительном модуле хранить копию информации из первого модуля, что испортит всю суть stateless вычислений.
Что бы вы посоветовали делать в таком случае?
начиная с "Если систему разделить через очереди..." не совсем понятно
Обсуждают сегодня