![sendmail이 50개 중 모든 이메일을 즉시 보내지 않음 [닫힘]](https://linux55.com/image/191129/sendmail%EC%9D%B4%2050%EA%B0%9C%20%EC%A4%91%20%EB%AA%A8%EB%93%A0%20%EC%9D%B4%EB%A9%94%EC%9D%BC%EC%9D%84%20%EC%A6%89%EC%8B%9C%20%EB%B3%B4%EB%82%B4%EC%A7%80%20%EC%95%8A%EC%9D%8C%20%5B%EB%8B%AB%ED%9E%98%5D.png)
프로그래밍 방식으로 1~50개의 이메일에 이메일을 보내고 있습니다. 프로그램은 한 번에 여러 개의 이메일을 작성하고 전송합니다. 하지만 일부 주문은 몇 분씩 지연되는 경우가 많고, 대량 주문의 경우 몇 시간 또는 심지어 하루 늦게 지연되는 경우도 있습니다. Sendmail은 Exchange로 이전되고 있으며 처음 몇 분 내에 전달된 메시지 수(약 75%)에서 알 수 있듯이 이러한 전환에는 문제가 없습니다. 이러한 이상값을 전달하는 데 몇 시간이 걸리며 이를 수정하는 방법을 모르겠습니다.
이 문제를 보거나 해결 방법을 아는 사람이 있습니까?
건배!
답변1
Sendmail의 기본 배달 모드는 수신된 각 메시지에 대해 하위 프로세스를 생성하고 "즉시" 배달/중계를 시도합니다. 특히 스팸 방지 검사의 경우 여러 병렬 서버로 다음 홉 서버를 (일시적으로) "오버로드"할 수 있습니다.
제안된 수정 사항:
- 제일 쉬운:5개 이상의 이메일을 일괄적으로 보내는 메시지 사이에 지연(예: 1초)을 도입합니다.
- 기본 수준 이상으로 sendmail 구성 조정(특히 원클릭 대상의 경우)
- 낮은 수준의 SMTP 라이브러리를 사용하고
VERB
(상세한) ESMTP 명령을 실행할 수 있는 경우 보낸 사람은 sendmail 분기를 피하고 초기 배달 시도가 끝날 때까지 기다릴 수 있습니다.