Qmail

僅在每天的特定時間段內使 qmail 出隊

  • March 11, 2015

我正在使用 qmail 代表許多人發送大量電子郵件。每個工作有 400k 到 600k 封電子郵件。

腳本將php所有消息排隊,這需要幾個小時。然後消息需要大約 24-48 小時才能出列並被發送。

時間長短不是問題,但我不喜歡在奇怪的時間發送電子郵件(例如在半夜或日出時)。

有沒有辦法告訴 qmail 僅在特定時間範圍內將消息出列?

例如,告訴它只在早上 6 點到晚上 8 點之間清空隊列,然後讓它在晚上 8 點之後“休眠”到第二天早上 6 點完成隊列。

使用 CentOS 6.6 最終版

該命令qmailctl pause將暫停 qmail,並qmailctl cont取消暫停。

如果這太多了,請查看原始碼:

pause)
 echo "Pausing qmail-send"
 svc -p /service/qmail-send
 echo "Pausing qmail-smtpd"
 svc -p /service/qmail-smtpd
 ;;

這樣做svc -p /service/qmail-send應該阻止qmail發送,然後svc -c /etc/service/qmail-send就恢復正常了。您可以在您選擇的時間使用 cron 作業來執行這些操作。

引用自:https://unix.stackexchange.com/questions/189592