Linux
sendmail 未立即發送 50 封郵件中的所有電子郵件
我以程式方式將電子郵件發送到 1 到 50 封電子郵件之間。該程序正在創建和發送電子郵件,許多電子郵件會立即發送。但是,我經常會收到一些延遲幾分鐘的訂單,並且在大批量交貨時會延遲幾個小時,我什至在一天后傳遞了一個。Sendmail 正在移交給 Exchange,並且此移交沒有問題,這可以從前幾分鐘內傳遞的(可能 75%)證明。正是這些異常值需要數小時才能傳遞,我不知道如何解決。
還有其他人看到過這種問題和/或知道如何解決這個問題嗎?
乾杯!
Sendmail 的預設傳遞模式為每個收到的消息派生子程序,並嘗試“立即”傳遞/中繼。它可能(暫時)“超載”具有多個並行的下一跳伺服器,尤其是在反垃圾郵件檢查的情況下。
建議的修復:
- **最簡單:**為以上 5 封電子郵件批次在發送消息之間引入延遲(例如 1 秒)
- 在基本級別之上調整 sendmail 配置(尤其是對於一個關鍵目標)
- 如果您使用低級 SMTP 庫並且可以發出
VERB
(詳細)ESMTP 命令,那麼您的發送程序可能會避免 sendmail 分叉並等待結束以進行初始傳遞嘗試