2010-03-18 2 views
3

많은 수의 고유 이메일 (스팸 제외)을 보내려는 SMTP 발신자를 프로그래밍하고 있습니다. hotmail.com/gmail.com과 같은 일반적인 제공 업체의 많은 수 신지 주소가 있으므로. 세션을 다시 사용하기 위해 TCP 연결을 풀링하고 싶습니다. 이것은 좋은 습관입니까? 아니면 별도의 메일을 보내려면 연결을 끊고 연결해야합니까?언제 SMTP 서버에 QUIT를 보내야합니까? 세션을 얼마나 오래해야합니까?

구독자 수가 많으므로 풀링 된 연결이 장기간 (예 : 1 시간) 유지 될 수 있습니다. 어떤 시점에서 연결을 적극적으로 해제해야합니까?

hotmail.com에 많은 MX 서버가 있습니다 (적어도 12 개). 마지막으로 혼란스러운 것은 대상 IP입니다. 대부분의 이메일을 서버 중 하나에 만 보내거나 분리하여 모든 서버에 보내면 어떤 차이가 있습니까?

한 번에 여러 가지 질문을하고 죄송합니다. 귀하의 의견과 답변에 감사드립니다.

답변

1

대상에 대한 X 전자 메일을 연결하고 연결을 끊습니다. X는 IMHO가 16에서 64 사이 여야합니다 - someemail 서버는 한 연결에서 너무 많은 것을 좋아하지 않으며, 그렇지 않으면 당신을 버릴 것입니다.

세션을 너무 오랫동안 열어 두지 않도록 대상별로 주문할 수 있으며 반드시 강제 연결 해제를 처리해야합니다.

원하는대로 MX 레코드를 사용하십시오. 전자 메일을 여러 대상 서버로 분할 할 필요가 없습니다.

+0

감사합니다. 실제로 MX 서버의 IP를 사용하여 직접 통신합니다. ip & mx 서버 이름으로 풀링하십시오. (예 : live.com 및 hotmail.com 모두 mx1-mx4.hotmail.com을 사용하며 12 ips를 가리 킵니다.) 연결을 열어두면 코드가 더 복잡해 지므로 알아 내고 테스트 결과를 게시하려고합니다. . (내 IP를 블랙리스트에 넣고 싶지 않기 때문에 기본 테스트 만 수행합니다.) – ccppjava

0

첫 번째 IMHO는 연결을 유지하기 위해 필요한 시간 이상 사용하지 않을 때 연결 상태를 유지합니다. 다른 사용자가 서비스에 액세스하는 것을 막을 수 있으므로 사용하지 않는 것이 좋습니다.

SMTP 서버에 연결하면 필요한 항목을 보내고 연결을 종료하기가 쉽습니다.

내가 잘못하지 않으면 Outlook도 보내는 각 메일에 대한 연결을 엽니 다.

+0

POP3처럼 여러 개의 전자 메일을 보낼 수 있다고 생각합니다. 많은 전자 메일을받을 수 있습니다. – ccppjava

관련 문제