2017-02-25 1 views
0

스프링 부트 마이크로 서비스 프레임 워크로 새 응용 프로그램을 빌드하려고합니다. 나는 몇 가지 데모를 시도했다. 기존 데모는 너무 단순하고 한 서비스에서 다른 서비스를 호출하는 방법을 소개하지 않습니다. http를 계속 통과해야합니까? 아니면 RPC를 통과해야합니까? RPC를 사용한다면 어떤 RPC 프레임 워크가 지원됩니까?스프링 부트 마이크로 서비스 프레임 워크 하나의 마이크로 서비스에서 다른 마이크로 서비스를 호출하는 방법

+1

전적으로 고객님에게 제공됩니다. 많은 사람들이 HTTP - REST/SOAP를 사용합니다. 많은 사람들이 메시징을 사용합니다 - RabbitMQ는 Spring Boot에서 탁월한 지원을합니다. 어떤 사람들 Akka와 같은 프레임 워크는 배포를 처리합니다. 하지만 Spring Boot와 어느 정도 통합되는지는 잘 모르겠습니다. 또 다른 사람들은 클러스터링 지원을 위해 UDP/멀티 캐스트와 함께 원시 소켓 및 사용자 지정 프로토콜을 사용합니다. 또 다른 사람들은 Hazelcast와 Teracotta를 통해 공유 객체를 사용합니다. 기본적으로 접근법의 수는 ** 거대한 **이며 일부 기준이 없으면 선택은 임의적입니다. –

+0

고마워. 그래서 성능이 문제가되지 않는다면 간단하기 때문에 http를 사용하고 싶습니다. d – richard

답변

1

다른 마이크로 서비스가 REST API를 노출하는 경우에, 당신은 간단한 사용 jersey client

또는 httpclient 그들을 호출 할 수 있습니다.

+1

또는 'RestTemplate'을 통한 Spring Rest 지원 - OP가 명시 적으로 Spring Boot를 언급 할 때 더 현명한 가능성이 있습니다. –

2

서비스간에 통합하는 방법은 동시성/비동기 성, 생성 될로드 등 수많은 요인에 따라 달라집니다. 가장 널리 사용되는 통합 방법은 REST 기반 방법입니다. spring으로 질문을 태그 했으므로 선언적 REST 클라이언트를 사용하는 것이 좋습니다. - Feign은 매우 잘 설명되어 있습니다. here. 메시지 브로커도 사용할 수 있습니다.이 브로커도 Spring Cloud Stream에서 매우 잘 추상화되어 있습니다. 자세한 내용은 here을 참조하십시오. 깊이있는 토론은 당신의 필요에 따라 이루어져야한다고 생각합니다.

관련 문제