본문 바로가기
JAVA

ExecutorService 를 이용한 javaMail 대량 메일 발송 bulk mail send

by 아이티.파머 2016. 10. 4.
반응형

1.병렬처리를 이용한 ExecutorService 사용.

2. JavaMail Session 유지

3. 발송 1000건 마다 메일 발송


Transport t = session.getTransport();
t.connect();
try {
  for(Message m : messages) {
    m.saveChanges();
    t.sendMessage(m, m.getAllRecipients());
  }
} finally {
  t.close();
}


while (mailSize == 1000) {

mailSenderService.send(mailMessage);

}


좀더 발전시킨다면, 컨슈머와 프로듀서 개념으로 사용하여, 특정 제약 조건을 좀더 명확하게 걸어 주거나,

발송건수 제한을 두고, 제한한 데이터 이상의 데이터가 들어왔을때 제어 할 수 있도록 수정



예제 코드 






반응형

'JAVA' 카테고리의 다른 글

ExecutorService / ThreadPoolExecutor  (0) 2018.11.12
JSR303 HV000030 Error  (0) 2016.10.19
JAVA try catch with resource  (0) 2016.03.15
FileInputStream vs FileReader 그리고 차이점  (0) 2016.03.15
Java Cache (LRU Cache) LinkedHachMap  (0) 2015.12.10