ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • GRPC (작성중)
    공부/ ETC 2020. 7. 7. 22:17

    Concept Diagram

    GRPC 란?

    • google에서 만든 rpc framework ( RPC 란? remote procedure call -> 다른 네트워크 상의 서비스를 이용할 수 있는 프로토콜 )
    • IDL 로 protocol buffer 사용

    서비스

    • 단항(스트리밍 없음)
    • 서버-클라이언트 스트리밍
    • 클라이언트-서버 스트리밍
    • 양방향 스트리밍

    장점

    1. 높은 생산성과 효율적 유지 보수
      • IDL 만 작성하면 코드를 자동으로 생성할 수 있습니다.
    2. 다양한 언어와 플랫폼 지원
    3. HTTP2 기반의 양방향 스트리밍
      • HTTP2 기반으로 동작하기에 HTTP2 의 장점도 포함합니다. (양방향 스트리밍, 헤더 압축률 등)
    4. 높은 메세지 압축률과 성능
      • protobuf를 이용함으로 메세지 크기를 크게 줄일 수 있습니다.
    5. 다양한 생태계
      • @TODO 이 부분은 추가적으로 공부가 필요

    권장 시나리오

    • 마이크로 서비스: gRPC는 대기 시간이 짧고 처리량이 높은 통신을 위해 설계되었습니다. gRPC는 효율성이 중요한 경량 마이크로 서비스에 적합합니다.
    • 지점 간 실시간 통신: 양방향 스트리밍을 위한 뛰어난 지원 기능을 제공합니다. gRPC 서비스는 폴링을 사용하지 않고 실시간으로 메시지를 푸시할 수 있습니다.
    • Polyglot 환경: gRPC 도구는 널리 사용되는 모든 개발 언어를 지원하며, 따라서 gRPC는 다중 언어 환경에 적합합니다.
    • 네트워크 제한 환경: gRPC 메시지는 경량 메시지 형식인 Protobuf를 사용하여 직렬화됩니다. gRPC 메시지는 항상 해당하는 JSON 메시지보다 작습니다.

    참고

    https://medium.com/@goinhacker/microservices-with-grpc-d504133d191d

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

    '공부 > ETC' 카테고리의 다른 글

    GRASP PATTERN  (0) 2020.08.03
    데이터의 이해  (0) 2020.03.31
    Tistory Code 올리기 - SyntaxHighlighter  (0) 2018.07.26
Designed by Tistory.