У меня есть рабочий процесс, работающий на heroku dyno
, который выполняет фоновые задачи, которые передаются ему с интервалами в течение всей недели. Недавно в журнале появилось сообщение:
2020-05-09T17:01:54+00:00 app[heroku-redis]: source=REDIS addon=redis-objective-15996 sample#active-connections=2 sample#load-avg-1m=0.12 sample#load-avg-5m=0.11 sample#load-avg-15m=0.075 sample#read-iops=0 sample#write-iops=0.049587 sample#memory-total=15664264kB sample#memory-free=12342424kB sample#memory-cached=1615792kB sample#memory-redis=24699488bytes sample#hit-rate=0.35332 sample#evicted-keys=0
2020-05-09T17:01:54+00:00 app[heroku-redis]: source=REDIS_URL sample#used_memory_over_limit=1106528.0bytes message=Database memory close to the limit. Please upgrade your database plan or change your maxmemory policy.
Это сообщение не останавливает выполнение задач, если они равны enqueued
. Тем не менее, даже если в очереди нет заданий на выходных, отображается то же сообщение журнала. Учитывая, что я не забиваю воркера множеством незавершенных задач, я использую time.sleep(3)
до enqueue
new tasks
.
redis:info
:
=== redis-something-15996 (REDIS_URL)
Plan: Hobby Dev
Status: available
Created: 2020-04-25 06:48
Version: 5.0.8
Timeout: 300
Maxmemory: noeviction
Maintenance: not required
Maintenance window: Mondays 18:00 to 22:00 UTC
Persistence: None
HA Status: Unavailable
Я пытался перезагрузить процесс, а также очистить queue
, но это не сильно изменилось. Следует ли мне изменить политику maxmemory
с этим планом по выселению зомби? Кажется, это правильный подход к проблеме?
Любая помощь будет принята с благодарностью ..