gRPC vs RestAPI vs Messaging vs GraphQL

오민석·2021년 11월 23일
0

gRPC vs RestAPI

  • http2 + protobuff(직렬화)를 통해 n/w 속도 측면에서 유리
  • .proto 파일에 시스템 호출하는 부분 스키마 정의
  • MSA에서 시스템 간 호출이 많다보니까 gRPC 사용

https://docs.microsoft.com/ko-kr/aspnet/core/grpc/comparison?view=aspnetcore-6.0

Messaging

GraphQL

  • 언더페칭 및 오버페칭 문제 해결
  • TypeGraphQL 경우는 GraphQL과 달리 스키마 따로 지정할 필요 없음
  • 애플워치, 웹, 앱 다양한 기기와 데이터 주고 받다보니 해당 기기별로 별도의 API를 구축해야하는데 그럴 필요가 없음

MSA호출 시 동기방식: RestTemplate vs OpenFeign

OpenFeign -> 시스템 호출 하는 부분 인터페이스로 정의하여 모듈화 / ErrorDecoder 통한 RestTemplate과 달리 try-catch 사용할 필요 없음

https://wonit.tistory.com/507?category=854728
https://github.com/minsuk1/msa-practice/blob/master/msa-ecommerce/user-service/src/main/java/com/example/userservice/error/FeignErrorDecoder.java

0개의 댓글