검색

45.5. 예제

download PDF

이 Camel 구성 요소를 사용하면 처리 작업을 요청하고 Beanstalkd 데몬에 제공할 수 있습니다. 간단한 데모 경로는 다음과 같을 수 있습니다.

from("beanstalk:testTube").
   log("Processing job #${property.beanstalk.jobId} with body ${in.body}").
   process(new Processor() {
     @Override
     public void process(Exchange exchange) {
       // try to make integer value out of body
       exchange.getIn().setBody( Integer.valueOf(exchange.getIn().getBody(classOf[String])) );
     }
   }).
   log("Parsed job #${property.beanstalk.jobId} to body ${in.body}");
from("timer:dig?period=30seconds").
   setBody(constant(10)).log("Kick ${in.body} buried/delayed tasks").
   to("beanstalk:testTube?command=kick");

첫 번째 경로에서 우리는 튜브 "테스트Tube"에서 새로운 작업을 듣고 있습니다. 도착하면 메시지 본문에서 정수 값을 구문 분석하려고 합니다. 성공적으로 완료되면 이를 기록하고 이를 성공적으로 교환하면 Camel 구성 요소가 Beanstalk에서 이 작업을 자동으로 삭제할 수 있습니다. 반대로 작업 데이터를 구문 분석할 수 없는 경우 교환 실패와 Camel 구성 요소가 기본적으로 이를 제거하므로 나중에 처리할 수 있거나 실패한 작업을 수동으로 검사할 수 있습니다. 

따라서 두 번째 경로는 주기적으로 Beanstalk를 요청하여 일반 대기열에서 10  의 작업을 묻거나/또는 지연된 상태로 실행합니다.

 

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.