1.3. 부스터 프로젝트 빌드
이 지침에서는 Spring Boot에서 Fuse on Spring Boot를 사용하여 회로 차단기를 빌드하는 방법을 안내합니다.
사전 요구 사항
- Red Hat 개발자 포털 을 통해 booster 프로젝트를 생성하고 다운로드해야 합니다.
- 지원되는 JDK(Java Developer Kit) 버전이 있어야 합니다. 자세한 내용은 지원되는 구성 페이지를 참조하십시오.
- Apache Maven 3.3.x 이상이 있어야 합니다.
절차
쉘 프롬프트를 열고 Maven을 사용하여 명령줄에서 프로젝트를 빌드합니다.
cd fuse-circuit-breaker
cd fuse-circuit-breaker
Copy to Clipboard Copied! Toggle word wrap Toggle overflow mvn clean package
mvn clean package
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Maven이 프로젝트를 빌드하면 Build Success (빌드 성공) 메시지가 표시됩니다.
다음과 같이 새 쉘 프롬프트를 열고 name 서비스를 시작합니다.
cd name-service
cd name-service
Copy to Clipboard Copied! Toggle word wrap Toggle overflow mvn spring-boot:run -DskipTests -Dserver.port=8081
mvn spring-boot:run -DskipTests -Dserver.port=8081
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Spring Boot가 시작되면 다음과 유사한 출력이 표시됩니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음과 같이 새 쉘 프롬프트를 열고 인사말 서비스를 시작합니다.
cd greetings-service
cd greetings-service
Copy to Clipboard Copied! Toggle word wrap Toggle overflow mvn spring-boot:run -DskipTests
mvn spring-boot:run -DskipTests
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Spring Boot가 시작되면 다음과 유사한 출력이 표시됩니다.
... 2019-05-06 20:22:19.051 INFO 9729 --- [ main] o.a.c.c.s.CamelHttpTransportServlet : Initialized CamelHttpTransportServlet[name=CamelServlet, contextPath=] 2019-05-06 20:22:19.115 INFO 9729 --- [ main] b.c.e.u.UndertowEmbeddedServletContainer : Undertow started on port(s) 8080 (http) 2019-05-06 20:22:19.123 INFO 9729 --- [ main] com.redhat.fuse.boosters.cb.Application : Started Application in 7.68 seconds (JVM running for 12.66)
... 2019-05-06 20:22:19.051 INFO 9729 --- [ main] o.a.c.c.s.CamelHttpTransportServlet : Initialized CamelHttpTransportServlet[name=CamelServlet, contextPath=] 2019-05-06 20:22:19.115 INFO 9729 --- [ main] b.c.e.u.UndertowEmbeddedServletContainer : Undertow started on port(s) 8080 (http) 2019-05-06 20:22:19.123 INFO 9729 --- [ main] com.redhat.fuse.boosters.cb.Application : Started Application in 7.68 seconds (JVM running for 12.66)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 인사말 서비스는
http://localhost:8080/camel/greetings
URL에 REST 끝점을 노출합니다.웹 브라우저에서 URL을 열거나 다른 쉘 프롬프트를 열고 다음
curl
명령을 입력하여 REST 끝점을 호출합니다.curl http://localhost:8080/camel/greetings
curl http://localhost:8080/camel/greetings
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 응답은 다음과 같습니다.
{"greetings":"Hello, Jacopo"}
{"greetings":"Hello, Jacopo"}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Camel Hystrix에서 제공하는 회로 차단기 기능을 설명하기 위해 이름 서비스가 실행 중인 쉘 프롬프트 창에서 Ctrl-C 를 입력하여 백엔드 이름 서비스를 종료합니다.
이제 이름 서비스를 사용할 수 없으므로 회로 차단기가 시작되어 인사말 서비스가 호출될 때 중단되지 않도록 합니다.
웹 브라우저에서
http://localhost:8080/camel/greetings
를 열거나 다른 쉘 프롬프트 창에 다음curl
명령을 입력하여 인사말 REST 끝점을 호출합니다.curl http://localhost:8080/camel/greetings
curl http://localhost:8080/camel/greetings
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 응답은 다음과 같습니다.
{"greetings":"Hello, default fallback"}
{"greetings":"Hello, default fallback"}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 인사말 서비스가 실행 중인 창에서 로그에 다음과 같은 메시지 시퀀스가 표시됩니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
이 예제에 대한 자세한 내용은 http://localhost:8080/ 에서 Circuit Breaker - Red Hat Fuse 페이지를 엽니다.
이 페이지에는 회로 차단기의 상태를 모니터링하는 Hystrix 대시보드에 대한 링크가 포함되어 있습니다.