Автоперезапуск раз в сутки через cron?

Несколько недель назад я публиковал следующее:

С тех пор у нас произошел инцидент, когда Discourse не получал входящие письма в течение пяти дней: 1 апреля он успешно обработал два входящих письма, но затем не смог обработать четыре письма, поступивших 2 и 3 апреля. Затем, 5 апреля, по неизвестным причинам в логе появилась запись:

Ошибка задачи: -ERR [SYS/TEMP] Сервер завершает работу.

На следующий день он снова начал получать письма из нашего POP-почтового ящика (хотя, как и раньше, с периодическими задержками: проверка ящика настроена на каждые несколько минут, но иногда новые сообщения поступают за пару минут, а иногда процесс занимает несколько часов).

Может ли помочь ежедневная перезагрузка Discourse через cron? Это сообщество с низкой активностью: всего несколько постов в день (обычно 5–10), но большинство участников получают посты по электронной почте, и всем важно, чтобы письма приходили оперативно.

Итак:

Хорошо ли для приложения перезапускать Discourse раз в день, или это вредно, или не имеет значения?

Что еще можно попробовать, чтобы Discourse чаще проверял и получал сообщения из нашего POP-ящика?

Спасибо!

Это не проблема Discourse. Это сообщение об ошибке от вашего POP3-сервера. Вам следует обратиться к вашему провайдеру общего хостинга cPanel для решения этой проблемы.

Ещё лучше настроить прямую доставку входящей почты: Configure direct-delivery incoming email for self-hosted sites with Mail-Receiver

2 лайка

Привет, Ричард,

Спасибо за полезный ответ.

Сообщение «Server shutting down» исходит от моего POP-сервера? Я думал, что оно появляется из-за droplet Digital Ocean. (Я только что снова посмотрел логи ошибок и действительно, трассировка показывает POP3Command#check_response. Как странно.)

Спасибо за ссылку на прямую доставку входящей почты — я думал, что именно это и делаю, но, apparently, нет. Я немного опасаюсь сложности правильной настройки входящей и исходящей почты, когда вся остальная входящая почта должна идти через cPanel, но это хорошее предложение, и, возможно, я попробую.

Большое спасибо за полезную информацию!

1 лайк

Да

Я не на 100% уверен в вашей конфигурации, но проще всего перенаправить почту @example.com на ваш cPanel, а для форума использовать адрес @forum.example.com.

1 лайк

Это общепринятая практика — создавать отдельный поддомен, если вы хотите разделить почтовые потоки. Почтовая система внутри Discourse может работать с доменом, отличным от того, на котором она размещена. Например, у меня Discourse находится на forums.tld.com, а почта — на mail.tld.com. Это позволяет моему основному почтовому серверу на tld.com оставаться независимым от почтового управления Discourse.

Мы только что перешли с модели POP3 на модель почтового получателя. Установка была очень простой, и теперь всё работает гораздо лучше.