Чем idempotent job отличается от одноразовый side effect и когда что выбирать?

Ruby / RailsMiddleBackground Jobs и SidekiqСравнениеbackground jobs и sidekiq|idempotent|ruby|rails|idempotent job

Что хотят услышать интервьюеры:

Сравнение: «idempotent job» обычно оценивают в паре с одноразовый side effect. Выбор зависит от читаемости, Rails conventions, стоимости поддержки, безопасности, нагрузки и тестируемости.

Ответ:

Когда выбирать idempotent job: когда его свойства прямо решают задачу, а не просто выглядят привычно.

Плохой ответ: «так принято в Rails» без объяснения последствий.

return if Payment.exists?(external_id: id)

Источники

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