apache camel 예제

웹 소켓 아파치 낙타를 사용하여 웹 페이지에 새로운 트윗을 푸시하는 예는 마이크로 서비스가있는 시스템에서 매우 유용 할 수 있습니다. 이 경우 많은 서비스가 함께 작동하고 Camel이 통합에서 역할을 할 수 있습니다. 예를 들어 이 문서에서 설명한 것과 같은 API 게이트웨이를 만들 때 https://developers.redhat.com/blog/2016/11/07/microservices-comparing-diy-with-apache-camel/. 연결된 문서의 예는 실제로 다른 서비스에 대한 여러 호출을 수행하고 결과를 결합하는 우아한 솔루션을 만들 수 있음을 보여줍니다. 또한 아파치 낙타는 Hystrix와 같은 회로 파괴에 대한 지원을 제공한다는 것을 보여줍니다. 또 다른 좋은 추가 는 Ehcache와 같은 캐시 공급자와 통신하기 위한 구성 요소입니다. 아파치 카멜의 미래를 위해 나는 클라우드 서비스와의 통신을위한 더 많은 구성 요소를 가지고 하는 것이 좋을 것이라고 생각합니다. AWS 서비스의 경우 일부 구성 요소를 사용할 수 있지만 Microsoft Azure 및 Google 클라우드 플랫폼의 경우 그다지 많지 않습니다. 개발자는 여전히 매우 적극적으로 아파치 낙타 프로젝트에 최선을 다하고 그래서 더 많은 구성 요소를 사용할 수 있게 될 것으로 예상.

아파치 낙타에 대한 대안은 예를 들어 스프링 통합, 이는 유사한 기능을 가지고 있지만, 사람들은 아파치 낙타의 구문을 선호하는 경향이있다. 또 다른 대안은 뮬 ESB이지만 프레임워크보다 바로 사용할 수 있는 플랫폼입니다. 우리는 단지 당신이 사용할 수있는 몇 가지 유용한 구성 요소가 실제로 포함 낙타 코어를 탐구하려고합니다. 또한 로깅 목적을 위해, 우리는 콘솔에서 출력을 볼 수 있도록 로거 구현으로 slf4j-간단한을 추가했습니다. 예제 작업을 시작하기 전에 Camel 작업에 대한 요구 사항을 확인할 수 있습니다. 그런 다음 실행 예제에서는 예제를 계속 실행하려면 클래스 경로에 종속 jar 파일을 추가해야 하는 방법을 설명합니다. 이것은 항아리 파일을 직접 배포하거나 Maven을 사용하여 달성 할 수 있습니다. 우리는 우리의 예를 들어 메이븐을 사용하기 때문에 우리는 다음 항아리의 종속성에 대한 pom.xml을 사용합니다 : 놀라운 사실은 CERN이 큰 하드론 충돌기 (LHC)의 시스템을 모니터링하기 위해 아파치 낙타와 ActiveMQ를 사용하는 것입니다. 이 작업에 적합한 미들웨어 솔루션의 선택을 설명하는 흥미로운 석사 의 대문도 있습니다. 그래서, 그들은 기조 연설에서 말했듯이, “없음 JMS- 아니 입자 물리학!” OSGi 청사진과 서벌 및 HttpRegistry를 사용하는 예는 아키텍처에 대한 자세한 정보를 얻을 수, 위의 TimerRouteBuilder 예제에서 http://camel.apache.org/architecture.html이 링크를 사용하여, 우리는 즉석에서 프로세서를 만들었습니다.

이제 몇 가지 다른 프로세서를 함께 결합하면 노이즈를 최소화하는 것이 좋습니다. 낙타는 자신의 레지스트리 공간에 처리 콩을 등록하여이 작업을 수행 할 수 있습니다, 당신은 단순히 콩 구성 요소로 경로에서 참조. 위의 예제를 콩 처리로 변환하는 방법은 다음과 같습니다. WS-보안 서명(camel-example-cxf-ws-security-signature) 경로를 사용하는 CXF는 아파치 카멜의 중요한 부분입니다. 통합의 흐름과 논리는 여기에 지정됩니다.