-
[GCP]Cloud Pub/Sub클라우드/GCP 2021. 9. 27. 18:17
*책 <구글 클라우드 뽀개기> 참고한 내용 *
Cloud Pub/Sub이란?
GCP의 대표적인 메시징 서비스로 Kafka나 래빗MQ와 같은 오픈소스 메시징 서비스다. (Publisher/Subscriber)
>> Kafka? 레드햇기반 https://www.redhat.com/ko/topics/integration/what-is-apache-kafka
>> 래빗MQ? AWS기반 https://www.redhat.com/ko/topics/integration/what-is-apache-kafka
구글 제품에 활용된 핵심인프라로 구글애즈, 서치, 지메일 등에 사용되었다. 펍섭을 사용하여 초당 5억건의 메시지를 전송할 수 있다.
보통 비동기 데이터 전달시 중간에 Pub/Sib을 통해 안정적인 메시지 전달을 할 수 있다.
Topic(메시지 생산) <-> Subscription(메시지구독)
1:다, 다:1, 다:다 구성으로 메시지가 전달된다.
메시징 서비스란?
메시지 (데이터)를 큐(Queue)에 넣고 차례대로 전달해주는 서비스다. (Queue : FIFO)
Pub/Sub의 메시지 흐름은 아래 사진과 같다.

https://cloud.google.com/pubsub/docs/overview?hl=ko Publisher(게시자) : 특정 주제에 대한 메시지를 만들어 메시지 서비스를 전송하는 사람
메시지 : 서비스를 통해 이동하는 데이터 > 게시자는 생성된 메시지를 주제로 전송한다.
Topic(주제) : 게시자가 메시지를 전송하는 이름이 지정된 리소스
Message Storage (메시지 저장소) : 메시지는 구독자가 확인할 때 까지 메시지 저장소에 남아있는다.
Subscription (구독) : 특정 주제의 메시지 수신의향을 나타내는 이름이 지정된 항목
Subscriber (구독자) : 지정한 구독에 대한 메시지를 받는 사람
Pull/Push 구독 방법
Pull 구독 : Subscriber가 Message를 요청할 때 전달받는 구조의 구독방식

출처 : Google Cloud Pullcalls : "메시지 줘!"
Messages : "여기!"
Acks : "잘받았어. 이제 지워도 돼"
Push구독 : Message가 오면 바로 Subscriber에게 전달하는 방식

Push만 따로 있는 사진을 못찾겠다. Message : Message(데이터) 받아!
Ack : 잘받았어. 이제 지워!
______________________________실습__________________________
1. Bigdata- 게시/구독(Pub/Sub) - 주제 선택(Create Topic)

2. 해당 주제에 대한 구독 만들기

이 때 Pull유형으로 만들어준다.
3. 다시 토픽으로 가서 메시지게시(영수증모양)을 누른 뒤 메시지를 보낸다.
그 다음 상단에 Cloud Shell 활성화를 통해 터미널을 열어주고 pull 명령어를 날린다.
>> gcloud pubsub subscription pull [구독이름]
DATA 부분에 3번단계에서 적었던 메시지가 나오는 것을 확인할 수 있다. Message_id는 저절로 생기는듯.
Python으로 간단한 Pub/Sub해보기
반응형'클라우드 > GCP' 카테고리의 다른 글
[GCP]StackDriver (0) 2021.09.28 [GCP]Cloud DataProc (0) 2021.09.27 [GCP]Source Repositories (0) 2021.09.27 [GCP] Cloud Composer (0) 2021.09.27 [GCP] 구글클라우드 공부하기 - Spanner1 (0) 2021.07.07