Akka 클러스터에서 Java IMAP 가 Java 를 사용하여 메일을 API
-
21-12-2019 - |
문제
내가 원하는 화재 몇 가지 작업이 연결 IMAP
고 이메일로 데이터를 저장하는 데이터베이스에서.
지금과 같은 작업이 거대한 볼륨을 지원하는 많은 IMAP
계좌입니다.고 싶 활용 Akka 클러스터의 기능을 실행할 수 있는 이러한 작업에 미리 정의된 집합의 컴퓨터에서 네트워크 및 하 retrials 에 오류가 발생하는 경우를 가져오는 동안의 데이터 IMAP
호스트가 있습니다.
나를 만들려는 akka 클러스터는 것이 불 IMAP
가 작업(을 통해 배우??!!).
IMAP
는 것은 까다로운 프로토콜지 못할 수 있습니다 원격 호스트에 연결하기 위해.에 suchcase 배우로 다시 시도해야 합니다 여러 가지 구성 가능 시간을 연결하고 데이터베이스를 지원합니다.
결국 그것을 행동으로 나 IMAP
가져옵니다.
어떻게 가야 하나요?
해결책
우리가 사용하는 Akka 포함하여,주에 연결하고 프로세스는 새로운 메시지에서'사용자 이메일 계정을 사용하여 JavaMail/IMAP.내결함성의 중요한 부분입니다.여기에는 대략 어떻게 우리의 백엔드가 설정:
- 관리자는 노드가 배우가 선택하는 사용자의 DB 처리
- IMAP 자 배우들이 알릴 경우 관리자들이 일을 위해 준비한(이에 대한 자세한 내용은"작업을 당"아키텍처,내 동료 라이언은 태 너의 블로그 게시물: http://blog.goconspire.com/post/64901258135/akka-at-conspire-part-5-the-importance-of-pulling)
- 관리자 전송 ProcessAccount 메시지-사용자 정의 개체를 포함하는 Gmail 은 OAuth 토큰(이용할 수 있는 전통적인 사용자 이름과 암호를 자격이 너무)--유휴 IMAP 노동자입니다.
- IMAP 노동자를 사용 JavaMail 을 읽고 프로세스는 새로운 메시지입니다.에 오류가를 보내 FailedProcessing 메시지-사용자 정의 개체를 포함하여 오류 코드를 읽을 수 있는 문자열을 감독자 배우입니다.에서 성공을 보냅 CompletedProcessing.
- 관리자는 사용자를 업데이트 레코드에 데이터베이스를 포함한 설정은 오류 코드가하면 처리하지 못했습니다.
- 이외에 주기적으로 처리한 건강좌,관리자는 다시 시도 횟수 처리 실패한 계정입니다.우리의 사용 사례는 우리는 시도는 재 처리는 하루에 한 번 있지만,당신이 할 수있는 훨씬 더 자주.
사용 Akka 클러스터링,우리는 계속 근로자에서 별도의 보호자의 감독이 필요합니다.이 접근 방식으로 작업을 당 메커니즘은 위에서 설명을 유지 우리가 비교적 용이하는 복구할 수 없는 오류는,예를 들어,OutOfMemoryErrors,에 노동자입니다.
다른 팁
사용 JavaMail.읽 JavaMail FAQ.
제휴하지 않습니다 StackOverflow