1
메일을받을 때마다 이메일을 보내는 프로세스 (Message Driven Bean)가 있습니다. 메시지 당 이메일 수는 10 개 미만입니다. Gmail 계정에 1 개의 연결을 열고 해당 연결을 통해 모든 이메일을 보냅니다. 때때로 Transport.Send()에 대한 예외가 발생합니다.Javamail을 통해 이메일을 보낼 때 gmail이 연결을 닫는 이유
javax.mail.MessagingException: Can't send command to SMTP host; nested exception is:
java.net.SocketException: Connection closed by remote host at
com.sun.mail.smtp.SMTPTransport.sendCommand(SMTPTransport.java:1878) at
com.sun.mail.smtp.SMTPTransport.sendCommand(SMTPTransport.java:1865) at
com.sun.mail.smtp.SMTPTransport.close(SMTPTransport.java:973) at
javax.mail.Transport.send0(Transport.java:193) at
javax.mail.Transport.send(Transport.java:120) at
....
Gmail은 연결이 스팸이라고 생각하여 연결을 닫습니까? Gmail (10)에 동시 연결 수에 제한이 있다는 것을 알고 있지만 이것은 다른 것처럼 보입니다. 연결 풀을 사용하면 도움이 될까요?
나는 그만큼 생각했다. 그러나 유휴 시간은 없습니다. 연결을 열고 이메일을 보내는 사이의 시간은 30 초 미만입니다. 또한,이 경우가 산발적으로 발생하고 많은 경우 (전체가 아님)에서이 오류가 발생하더라도 실제로 이메일이 전송됩니다. 이 시점에서 SMTP 릴레이 서비스를 사용하는 것을 고려하고 있습니다. – ankimal