Google Cloud Storage:Notification 實作 (三) – 使用於 Cloud Pub/Sub

GCS Notification 功能實作 (三):應用於 Cloud Pub/Sub

什麼是 Cloud Pub/Sub?

是一款低延遲、高擴充性的推送服務,它支援多對多、非同步的訊息/資料傳送。

它是如何運作的?

推播者新增一個 topic,然後再新增一個或多個 subscription 去對應到這個 topic。推播者會傳送訊息/資料給指定的topic,對應到的subscription 就會把訊息/資料傳送給訂閱者。如下圖:

簡介

•  Topic: 哪個publisher 傳送的訊息
•  Subscription: 定義資料來自哪個topic以及最終要傳送的 subscribers
•  Message: 包括資料以及optional的資料,最後要傳給 subscribers
•  Message Attribute: 一個讓publisher 可以定義訊息的key-value pair。

服務特點

•  確保資料必定至少送達一次
•  
適合傳輸大量且沒有時間排序的資料

Notification configurations

連結使用者bucket的設定,包括:

•  Pub/Sub中接收資訊的Topic
•  發出通知的觸發事件(每個事件可以設定最多10個規定)
•  通知的內容

事件類型

事件類型 敘述
OBJECT_FINALIZE 新增、修改Object成功,如果上傳失敗則不會觸發
OBJECT_METADATAUPDATE 修改現有的Metadata Object成功
OBJECT_DELETE 刪除Object成功,包括改寫Object。如果Object versioning啟動時不會被觸發
OBJECT_ARCHIVE 只有在Object versioning啟動時才會被觸發,當有Object被修改時,bucket會自動Archive一個紀錄

如何設置

接下來的步驟會示範如何設定 Cloud Pub/Sub for Cloud Storage。

1. 先至 API & Services 啟用 Cloud Pub/Sub API
2. 確認欲監控的 bucket 及用來接收的 project 都有足夠的權限
3. 新增一個通知設定

$ gsutil notification create -t [TOPIC_NAME] -f json gs://[BUCKET_NAME]

4. 條列所有通知設定

$ gsutil notification list gs://[BUCKET_NAME]

5. 移除一個通知設定

$ gsutil notification delete projects/_/buckets/[BUCKET_NAME]/notificationConfigs/[CONFIGURATION_NAME]

參考文章

Cloud Pub/Sub Notifications for Cloud Storage

 

 


iKala - GCP 專門家

GCP 專門家,Google Cloud 首席合作夥伴暨代理商,協助逾 200 家企業使用 Google Cloud,客戶廣布遊戲、媒體、數據廣告、電商、金融等多種產業。我們擁有超過 30 位技術人員,更通過 Google 原廠雲端架構師及資料工程師認證,具備第一手 GCP 產品開發及導入經驗,能提供您紮實的客製化技術服務。

我們提供了多項的 GCP 加值服務:

了解更多: https://gcp.expert/
加入我們: https://goo.gl/rg9D3Q
Facebook Fan Page: https://www.facebook.com/gcp.expert/
聯絡我們:+886 2 87681110 或請來信 gcp@ikala.tv