2

Camel 구성 요소를 Camel 구성 요소로 사용하여 응용 프로그램 서버에서 작업을 예약하려고합니다.이 기술 선택은 최종적으로 나의 페이 라인 그레이드보다 높습니다. Apache가 제공하는 유일한 문서는입니다. 낙타/석영 초보자를위한 실제 유용한 예제없이 초소형입니다.Apache Camel-Quartz 통합

나는 구체적인 작업을 파악하기 전에 여기 큰 그림을 이해하려고 노력하고 있습니다. 문서에 다음과 같이 명시되어 있습니다 - Camel을 통해 - Quartz 타이머가 끝점으로 설정되었습니다. 그래서 나는 이라고 가정하고 (내가 틀렸다면 수정하십시오.) 이것은 설정/등록 정보 파일과 함께 실행될 작업을 코드화 한 다음 낙타 종점으로 석영 타이머를 설정한다는 것을 의미합니다. 그런 일자리가 도망 치면 Camel을 통해 다른 종점 (?)과 통신 할 수 있습니다.

Quartz 대신 camel-quartz을 사용하면 다른 종점과 통신 할 수 있다는 이점이 있습니까?

석영은 quartz.properties 파일로 구성 될 수 있으며 스케줄러를 초기화 할 수 있도록 다른 구성이 필요합니다. camel-quartz이 도움이됩니까? 저는 작업 작성에 집중하고 싶지만 최소한의 XML 또는 속성 구성이 필요한지 확실하지 않습니다.

camel-quartz 개발 프로세스를 좀 더 명확하게 설명하는 데 도움을 주실 수있는 사람에게 미리 감사드립니다.

답변

2

이미 낙타 웹 사이트에서 낙타 석영 문서를 보았습니까?

매우 자세한 것은 아니지만 시작해야합니다. quartz.properties는 클래스 경로의 맨 아래에서 검색됩니다. 다른 파일을 지정하거나 사용자 정의 특성을 사용할 수도 있습니다. "quartz.properties 파일 구성"절을 참조하십시오.

낙타 석영에는 낙타 경로를 유발하는 간단한 목적이 있습니다. 따라서 다른 모든 낙타 구성 요소를 사용하여 요구 사항을 구현할 수 있습니다. 당신의 일이 통합에 관한 것이라면 낙타 석영은 좋은 선택입니다. 귀하의 직업이 주로 귀하의 응용 프로그램의 내부 API를 호출하는 경우 정상적인 석영으로 충분합니다. 석영 끝점을 설정

+0

감사합니다. Christian - 예 원본 질문에 같은 링크가 포함되어 있으므로 페이지가 최소한으로 도움이되었습니다. Quartz timer/scheduler가 석영 속성 파일에 구성되어 있는지 또는 낙타 구성 파일에 낙타가 있는지 궁금합니다. – IAmYourFaja

6

쉽고, 아래의 수정 작업은 오전 1시에서 매일 FileProcessor.process()을 트리거 :

석영, 당신이 할 수있는 클래스 경로에 quartz.properties을 찾습니다 기본적으로
<camelContext id="camel" xmlns="http://camel.apache.org/schema/spring"> 
    <package>com.test.app</package> 
    <template id="camelTemplate"/> 
    <route> 
     <from uri="quartz://fileProcessorJob?cron=0+0+1+*+*+?"/> 
     <to uri="bean:fileProcessor?method=process"/> 
    </route> 
</camelContext> 

아래 그림과 같이 xml의 구성 세부 정보도 제공하십시오.

<bean id="quartz" class="org.apache.camel.component.quartz.QuartzComponent"> 
    <property name="propertiesFile" value="com/test/app/myquartz.properties"/> 
</bean>