Постоянный приемник почтальона на эластичном бобовом стебле AWS

Я написал приложение rails, которое использует gem mailman-rails для проверки входящих сообщений Gmail на наличие новых сообщений и извлечения их после прочтения. Он использует mailman-rails, чтобы постоянный прослушиватель почтальона следил за входящими сообщениями на наличие новых сообщений.

Он отлично работает во всех отношениях, за исключением того, что когда я запускаю рабочий сервер, размещенный на AWS, почтовый сервер никогда не остается включенным более 24-36 часов. Я проверяю журналы и не вижу каких-либо критических ошибок, которые привели к отключению прослушивателя почтальона, поэтому я предполагаю, что это просто самоубийство или тайм-аут?

Или есть что-то в эластичной природе AWS EB, которая заставляет сервер периодически перезагружаться, что, очевидно, отключило бы почтальона?

Прямо сейчас я каждый раз вручную запускаю SSH для запуска на mailman с помощью rake mailman:start. Что я должен делать вместо этого?

Или как мне написать скрипт, который вручную перезапускает mailman каждые 5 часов или около того, чтобы убедиться, что он всегда включен?

1 ответ

Решение

Вы можете легко добавить задачу cron, используя.ebextensions и crontab AWS Elastic Beanstalk.

/questions/30707780/aws-elastic-beanstalk-rabotaet-cronjob/30707799#30707799 - отличное начало, однако я скажу, что вам нужно будет использовать полный путь для объединения и вызова команды через:

/usr/local/bin/bundle exec rake mailman:restart

Я достиг этой части через следующее:

Другие вопросы по тегам