ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [GCP] Pub/Sub 개념 정리
    GCP 2021. 8. 21. 00:14
    728x90

    Pub/Sub

     

    공식 문서 : https://cloud.google.com/pubsub/docs/overview

    GCP 콘솔 설명 내용 : https://cloud.google.com/pubsub


    내용 요약

    • 지연시간을 100밀리초 단위로 하는 비동기식 통신 서비스가 가능함
    • 데이터를 수집하고 배포하는 스트리밍 분석 및 데이터 통합 파이프라인에 사용
    • Publisher는 처리와 상관 없이 Pub/Sub 서비스에 이벤트를 보내어 Subscriber와 비동기적으로 통신함
    • 저렴한 비용과 낮은 가용성의 Pub/Sub Lite 서비스도 제공하고 있음
    • Pub/Sub의 용도는 최종 사용자와의 통신이 아닌 서비스 간 통신

     

    • 사용사례
      • 여러 클라이언트 이벤트 동시 수집 후 스트림 처리 도구(Dataflow)를 사용하여 DB(BigQueyr, Bigtable 등)에 전달
      • 실시간 이벤트 배포: 처리된 이벤트를 여러 앱에서 실시간으로 처리 가능
      • 데이터베이스 간 데이터 복제: DB의 변경 이벤트 배포하는데 사용
      • 병렬 처리 및 워크플로우: Cloud Functions(AWS Lambda)를 연결하여 다수의 작업을 여러 작업자 간 효율적 배포 가능

     

    • 메시징 기술
      • 파티션 기반이 아닌 메시지별 동시 로드 방식
      • 개별 메시지를 subscriber에게 임대(빌려준) 뒤 메시지가 성공적으로 처리되었는지 추적함
      • 이는 subscriber 앱의 동시 로드를 극대화하고 publisher/subscriber의 독립성 보장

     

    • 핵심 개념
      • Topic: publisher가 메시지를 전송하는 리소스(Topic 이름)
      • Subscription: Topic으로부터 subscriber 앱까지 전달되는 메시지 스트림의 전달 과정
      • Message: publisher가 Topic으로 보내고, subscriber에게 최종적으로 전달되는 데이터 집합
      • Message attribute: publisher가 메시지에 대해 정의할 수 있는 key-value값
      • Publisher: 메시지(데이터 집합)를 생성하고 Topic에게 전달하는 애플리케이션
      • Subscriber: Topic을 구독하여 메시지를 가져가는 애플리케이션
      • Acknowledgement: subscriber가 메시지를 성공적으로 가져간 후 Pub/Sub 서비스에게 보내는 신호
      • Push and pull: 두 가지의 메시지 전달 방식.
        • subscriber의 최종 목적지로 Pub/Sub이 push한 메시를 전달받음
        • subscriber가 Pub/Sub에서 pull하여 메시지 수신

     

     

     

    댓글

Designed by Tistory.