![매일 특정 기간에만 큐메일을 큐에서 빼도록 하세요](https://linux55.com/image/4871/%EB%A7%A4%EC%9D%BC%20%ED%8A%B9%EC%A0%95%20%EA%B8%B0%EA%B0%84%EC%97%90%EB%A7%8C%20%ED%81%90%EB%A9%94%EC%9D%BC%EC%9D%84%20%ED%81%90%EC%97%90%EC%84%9C%20%EB%B9%BC%EB%8F%84%EB%A1%9D%20%ED%95%98%EC%84%B8%EC%9A%94.png)
나는 많은 사람들을 대신하여 대량의 이메일을 보내기 위해 큐메일을 사용하고 있습니다. 작업당 이메일 수는 400,000~600,000개입니다.
스크립트는 php
모든 메시지를 대기열에 추가하는데 몇 시간이 걸립니다. 그런 다음 메시지가 대기열에서 제거되고 전송되는 데 약 24~48시간이 걸립니다.
시간은 문제가 되지 않지만, 이상한 시간(예: 한밤중이나 일출 시간)에 이메일을 보내는 것을 좋아하지 않습니다.
큐메일이 특정 시간 범위 내에서만 메일을 대기열에서 빼도록 지시하는 방법이 있나요?
예를 들어, 오전 6시부터 오후 8시 사이에만 대기열을 지우고 오후 8시 이후에는 "잠자기" 상태로 두고 다음날 오전 6시까지 대기열을 끝내지 않도록 지시합니다.
CentOS 6.6 Final 사용
답변1
이 명령은 qmailctl pause
큐메일을 일시정지한 다음 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
큐메일 전송이 중지되고 svc -c /etc/service/qmail-send
정상으로 돌아갑니다. cron 작업을 사용하여 원하는 시간에 이러한 작업을 수행할 수 있습니다.