feature: implements deduplication mechanist for celery messages

This commit is contained in:
ievgenii vdovenko 2025-10-13 16:26:40 +02:00 committed by ievgenii.v
parent 126269feef
commit 9555056af7
8 changed files with 195 additions and 19 deletions

View file

@ -419,6 +419,15 @@ archive_cache.filesystem.retry_attempts = 10
use_celery = true
; Enable message deduplication — When enabled, at most one message with the same task name + payload may be present in the queue at a time. (Default: false)
celery.enable_deduplication = false
; Redis lock store (for deduplication) — Redis connection used to hold deduplication locks. Must be different from celery.broker_url. (Default: redis/9)
celery.deduplicate_lock_store = redis://redis:6379/9
;Lock TTL (seconds) — Time-to-live for a deduplication lock. After expiry, another message with the same name + payload may be enqueued. (Default: 3600 seconds or 1 hour).
celery.lock_ttl_seconds = 3600
; path to store schedule database
#celerybeat-schedule.path =

View file

@ -381,6 +381,15 @@ archive_cache.filesystem.retry_attempts = 10
use_celery = true
; Enable message deduplication — When enabled, at most one message with the same task name + payload may be present in the queue at a time. (Default: false)
celery.enable_deduplication = false
; Redis lock store (for deduplication) — Redis connection used to hold deduplication locks. Must be different from celery.broker_url. (Default: redis/9)
celery.deduplicate_lock_store = redis://redis:6379/9
;Lock TTL (seconds) — Time-to-live for a deduplication lock. After expiry, another message with the same name + payload may be enqueued. (Default: 3600 seconds or 1 hour).
celery.lock_ttl_seconds = 3600
; path to store schedule database
#celerybeat-schedule.path =