Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

My application is configured to send out email notifications when an event happens. Sometimes this is fairly often (every minute), and every email has an attachment (up to 6-10 attachments), so each email can be pretty hefty, but not ridiculously so (500k per email is the maximum we would ever reach).

The problem we run into is that the emails will get delayed. They will still be delivered, but there will be a delay in there. The strange part about the delay is that it is very consistent (e.g. all emails arrive 1 hour late).

I thought this was a problem with my email server, so I moved my mail service to a (paid) virtual server with lots of memory, but that didnt seem to help (and I have plenty of resources left).

Does anyone have any insights into what might be factors here, or what kind of options do I have? Is moving to a paid SMTP service likely to solve this problem?

Thank you,

share|improve this question
4  
While you may be able to get this sorted out, I just would like to point out that SMTP was never designed to be an "instant" protocol. Sure, we've all gotten very used to hitting "send" and having the email show up nearly instantly on the other end. Just because that doesn't happen doesn't necessarily mean something is broken. There are many mechanisms built into the protocol and MTAs that can introduce delays during certain circumstances. If you need truly instant communication, use XMPP. :) –  EEAA Oct 21 '10 at 19:56
    
"The strange part about the delay is that it is very consistent." That is strange. Is it consistent across multiple hosts (i.e. sent email to two different domains is delayed equally)? –  pjmorse Oct 21 '10 at 20:18
    
@ErikA: Yes, I realize that SMTP is not instant. Unfortunately thats what I'm stuck with unless my software vendor implements XMPP :). Besides, I don't need it to be instant. A delay of few minutes is acceptable - which I think is the norm on the internet these days. –  Goro Oct 21 '10 at 21:32
    
@pjmorse: It is usally an hour or 30 minutes, regardless of host –  Goro Oct 21 '10 at 21:35
1  
I think Hutch has the best answer, then. If you have access to the received mail (and it sounds like you do) you should be looking at the headers to see where the messages get delayed. These days, my reflexive response to "mail problems" is "spam filtering." –  pjmorse Oct 21 '10 at 22:52

3 Answers 3

up vote 10 down vote accepted

You need to look at the SMTP headers to see where the delay is.

Once you know where the delay is, you know who has control over that delay, and it may not be you.

share|improve this answer

The delay may be related to greylisting occurring at the receiving server(s). I agree with Hutch: you need to find out where the delay is happening. If the receiving servers have implemented greylisting as an antispam measure, it may be possible to whitelist your emails so they get accepted immediately.

share|improve this answer

Greylisting is one process that can delay emails. To see if that is the case, take this Email Server Test

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.