문제

전체 메일 정보를 생성하고 사용하여 데이터베이스 테이블에 넣는 CRON이 있습니다. $mail_queue->put(.....) 전송 후 전송 후 삭제할 수있는 옵션이 있습니다.

약간의 도움이 필요한 곳은 다음과 같습니다. 위의 정보가있는 후 이메일을 보내는 가장 좋은 방법은 무엇입니까? 실행 $mail_queue->sendMailsInQueue() 바로 다른 Cron 작업을 사용하거나 다른 것을 사용합니까?

그건 그렇고 서버 제한은 100 개의 이메일 / 분입니다. 현재 마지막 CSV 차이 Mail_Queue 적용되지 않았으므로 (현재 지원에 따라 작업) "지연"옵션을 사용할 수 없습니다.

나는 그것을 사용할 아이디어가 있었다 $seconds_to_send 옵션이지만 Create_Time 필드의 기반에서 계산되어 큰 도움이되지 않지만 옵션이기도합니다.

모든 아이디어와 제안은 정말 감사 할 것입니다.

도움이 되었습니까?

해결책

개인적으로, 나는 실패의 기회가 줄어들 기 때문에 Cron 길을 갈 것입니다. 메일 서버가 응답을 중지하거나 다른 이유로 사용할 수 없게됩니다. 또는 전체 네트워크가 몇 시간 동안 오프라인 상태이지만 서버가 여전히 이메일을 생성하는 경우 어떻게해야합니까? 나는 대기열을 사용한다고 말한다.

지연에 관해서는, 서비스/크론 조브가 60 초마다 대기열을 집어 들고 100 개의 이메일을 팝업 한 다음 그만두면 그만 두십시오. 이메일 대기열이 전송 될 수 있지만 어떤 시스템을 선택하든 이런 일이 발생합니다. 어쨌든 피크 시간 동안 대기열이 비어 있습니다.

다른 팁

두 스크립트를 사용하십시오. 하나는 보내야 할 이메일과 함께 Mail_Queue 테이블을 채우고 두 번째 스크립트는 이동 중에 90 개의 메일의 덩어리로 이메일을 보내려면 두 번째 스크립트입니다. 두 번째 스크립트를 약 2 분마다 활성화하도록 설정하십시오.

호스팅 계획을 업그레이드 할 수도 있습니다 ;-)

왜 당신이 100 개의 이메일을 살펴보고 60 초 동안 잠을 자지 않는 이유. 이로 인해 스크립트가 조금 더 오래 실행되는 유일한 단점 일 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top