django-rq и rqscheduler на AWS Elastic Beanstalk

У меня есть приложение Django, которое работает в среде AWS EB. С недавними обновлениями мне пришлось интегрировать django-rq и rqscheduler для некоторых задач на основе очереди. Все это отлично работает на localhost с командами rqworker и rqscheduler. Но у меня возникают реальные проблемы с поиском способа заставить его работать в среде AWS EB. Мой анализ говорит, что единственный способ - использовать ElastiCache. Может ли кто-нибудь вести меня в правильном направлении или в каких-либо блогах, которые могли бы помочь мне в этом?

Ответ 1

Да уж! Таким образом, вы, вероятно, захотите отделить свой постоянный магазин (Redis) от ваших работников. Это очень хорошо отражено в Heroku (не говоря о том, что вы обязательно должны их использовать, но их пользовательский интерфейс очень хорошо отражает реальность) с Ресурсами (не перезапущен между развертываниями) и Dynos (перезапущен между развёртываниями).

Вероятно, у вас есть экземпляр ElastiCache (или самостоятельно размещенный Redis) для каждой из развернутых сред (производство, постановка и т.д.) С любыми URL-адресами/учетными данными через YAML. Таким образом, вы не потеряете работу, когда ваша служба будет перезагружена (поскольку Redis все еще будет жив), но вы можете развернуть новый код, когда захотите!