Skip to content
Go back

[Google Cloud] GCP Pub/Sub

Published:  at  11:01 PM

Table of contents

Open Table of contents

Cloud Pub/Sub là gì?

pubsub.jpeg

Cloud Pub/Sub – Hoạt động như thế nào?

Mối quan hệ giữa Publisher và subscriber

Trong Cloud Pub/Sub có chứa nhiều Topic, một Topic có thể có nhiều Subscription , Mỗi Subscripton chứa nhiều Message

Luồng xử lý Message trong Cloud Pub/Sub

  1. Pulisher tạo Topic trên Cloud Pub/Sub service và gửi messsage lên Topic. một messaage chứa nội dung tin nhắn và có thể có thêm mô tả (message attributes) cho tin nhắn đó.
  2. Message sẽ được lưu trữ tại Message Storage cho đến khi tin nhắn được chuyển đến cho subscribers và nhận được phản hồi kết quả từ subscribers.
  3. Cloud Pub/Sub sẽ chuyển tiếp message từ topic đến hàng đợi của tất cả subscriptions của nó. Mỗi subscriptions sau khi được tin nhắn, nó sẽ đẩy (push) message đó về cho subscriber. Hoặc subscriber có thể tự kéo (pull) message từ một subscription nào đó.
  4. Subscriber nhận được message đang chờ xử lý từ subscription.Subscriber sẽ xác nhận (ACK) từng tin nhắn từ subscription.
  5. Khi subscription nhận được tin nhắn xác nhận (ACK) của message đó thì thì message đó sẽ được xóa khỏi hàng đợi của subscription.

Vài điểm cần chú ý

Cloud Pub/Sub là bất đồng bộ (asynchronous) và không có trạng thái (stateless). Một message được gửi từ Publisher đến Subscription. Ở đây, Subscriber sẽ có 2 cách để có được message:

Cloud Pub/Sub đảm bảo là Subscriber nhận ít nhất 1 message. Nguyên nhân do một phần do cơ chế xác nhận tin nhắn của nó, Cloud Pub/Sub xóa tin nhắn nếu nó nhận được phản hồi xác nhân (ACK). Nếu Subscriber nhận được message nhưng phản hồi chậm hoặc không phản hồi thì message đó sẽ được gửi lại lần nữa cho đến khi nhận được phản hồi.

Khi một message không được gửi đến cho subscriber nào thì sẽ bị xóa sau thời gian là 7 ngày. Do đó Cloud Pub/Sub không phải là nơi để mà lưu trữ message. Các bạn muốn lưu trữ lại message thì thêm 1 subcription để queue tin nhắn và 1 Subscriber lấy message để lưu. Bên dưới là một số service/application có thể làm publishersubscriber.

Reference link

https://blog.cloud-ace.vn/cloud-pub-sub-hoat-dong-nhu-the-nao


Suggest Changes

Previous Post
[Google Cloud] Tìm hiểu về VPC trong Networking
Next Post
[Google Cloud] GCP Cloud Run