定價

Cloud Pub/Sub 服務費用的計算依據如下:

  • 訊息擷取與傳送
  • 搜尋功能有關的訊息儲存作業:快照與保留的已確認訊息

訊息擷取與傳送

2019 年 6 月 21 日前的價格時間表

系統會依據提取、推送和發布作業的訊息與屬性資料計算資料量。訊息擷取及傳遞係依據每月傳輸的資料用量計費。

每月資料用量 每 TiB 價格
前 10 GB $0.00 美元
其後的 50 TiB $60 美元
其後的 100 TiB $50 美元
超過 150 TiB 以後 $40 美元
如果您使用美元以外的貨幣付款,系統將按照 Google Cloud Platform SKU 頁面上列出的相應貨幣價格計費。費用計算單位為 TiB (240 個位元組,約為 1.01 兆位元組)。

示例:擷取與傳送訊息

為了說明預期可能產生的整體作業成本,我們假設有一個應用程式以 1 MiB/秒的速率,發布 1024 KB 的訊息至有兩個訂閱項目的主題。假定訂閱者能夠應付這樣的速率,Cloud Pub/Sub 以 1 MiB/秒進行擷取,以 2 MiB/秒進行傳送,總資料傳輸率為 3 MiB/秒。一個月 (30 日) 期間的總資料用量為 3 MiB/second x 3600 seconds/hour x 24 hours/day x 30 days/month x 1 month/(2^20 MiB/TiB) = 7.416 TiB。減去免費方案 (10 GB) 後,資料用量為 7.406 TiB,落在 $60 美元/TiB 的方案範圍,因此須支付 $444.36 美元的費用。

最低可計費用量

每個要求 (非訊息) 的最低可計費資料用量為 1 KB 資料。例如有 100 項發布要求,其中每項要求都有一則 500 位元組訊息,因此實際資料用量為 50 KB,但可計費資料用量為 1 KB/request x 100 requests = 100 KB。不過,如果這 100 則訊息都以單一發布要求發布,可計費資料用量就與實際情形相同 (50 KB)。

跨專案計費

如果您跨專案使用 Cloud Pub/Sub,則 Cloud Pub/Sub 費用將計入包含所要求資源的專案中,例如訂閱項目。舉例來說,專案 A 的服務帳戶可能獲得專案 B (屬於計費帳戶 B) 中某個訂閱項目的訂閱者存取權。在這種情況下,帳單帳戶 B 就必須為服務帳戶 A 從該訂閱項目中提取的資料支付費用。或者,如果訂閱項目位於 A 專案中 (即便是附加於 B 專案中的某個主題),則 A 帳戶就必須支付從該訂閱項目提取資料的費用。

自 2019 年 6 月起的訊息傳送定價

發布或傳遞訊息的價格為每 TiB $40 美元,不分層級。此外,我們也將收取地區資料輸出費。GCP 地區之間的網際網路輸出及訊息傳送費用,將與 Compute Engine 網路費率相同,但區域輸出及輸出至 Google 產品除外。使用 Cloud Pub/Sub 無需支付區域輸出費,輸出至 Google 產品無法免除輸出費。舉例來說,一則 1 MiB 的訊息在 us-west1 中發布並傳送給位於 europe-west1 的訂閱者,這項作業使用了兩個不同的 SKU,總共產生 3 MiB 的費用:2 MiB 的「訊息傳送基本費用」(發布與傳送作業各 1 MiB),以及 1 MiB 的「由美洲傳送至歐洲、中東和非洲地區的地區間資料費用」。

為了對這項變更做好準備,請參閱將帳單資料匯出至 BigQuery 一文,瞭解如何分析自己的使用情形。為帳單帳戶設定匯出功能後,您就可使用類似下方的查詢,瞭解自己的使用情形:

SELECT TIMESTAMP_TRUNC(usage_start_time, day) as usage_date,
  sku.description,
  usage.unit,
  sum(usage.amount) as egress_volume
FROM `BILLING_EXPORT_TABLE`
WHERE
  _PARTITIONTIME >= TIMESTAMP("2019-01-01")
  AND service.description = "Cloud Pub/Sub"
  AND (sku.description like "Internet data%"
      OR sku.description like "Inter-region data%")
GROUP BY usage_date, sku.description, usage.unit;

與還原功能相關的訊息儲存

定價

如為以下情況,訊息儲存費為每月 $0.27 美元/GiB:

  • 訂閱項目設為保留已確認的訊息,以便利用搜尋功能重新處理訊息。在這種情況下,會針對保留的已確認訊息收取儲存費。
  • 建立訂閱項目的快照。在這種情況下,會針對儲存快照的未確認訊息收取訊息儲存費。

範例:保留已確認訊息的訂閱項目

這就像是訊息擷取示例,但其中不同的是有單一訂閱設定為保留已確認訊息:

  • 訂閱主題以 1MiB/秒的穩定速率收到資料。
  • 訂閱者跟上訂閱資料,以 1 MiB/秒的速率使用,而新的訊息待處理工作可忽略不計。
  • 訂閱設定為保留 7 天的已確認訊息。
  • 已確認訊息量的成長情形:1MiB/second x 3600 seconds/hour x 24 hours/day = 86.4 GiB/day
  • 7 天後,保留的已確認訊息開始過期,儲存的已確認訊息總量達到穩定水準:7 days x 86.4 GiB/day = 605GiB
儲存這些訊息量的總月費約為 605 GiB-month x $0.27/GiB-month = $163

示例:快照訊息儲存費

快照訊息儲存費包含發布至快照主題訊息的增量費用,以及建立時的單次費用。以保留已確認訊息的訂閱項目快照為例:除非提前刪除快照,否則快照的生命週期為七天,因為用於建立快照的訂閱並沒有待處理的未確認訊息。第一分鐘發布的資料 (60 MiB) 會儲存 7 天又 1 分鐘,第二分鐘發布的資料會儲存 7 天又 2 分鐘,依此類推。在快照過期時,此情況產生的待處理資料大小為 605 GiB,總計使用 1/2 x 605 GiB x 7 days = 2118 GiB-days 的儲存空間,30 天費用則為 2118 GiB-days x (1/30 months/day) x $0.27/GiB-month = $19。因此,快照可能比保留已確認訊息更具成本效益。

示例:含待處理工作的訂閱項目快照

如果訂閱項目在快照建立時有待處理的未確認訊息,則會收取一次性費用,相當於儲存待處理工作整整七天。舉例來說,假設訂閱項目包含 10 GiB 的待處理未確認訊息,在建立快照時收取的一次性費用為 10 GiB x 7 days / 30 days/month x 0.27/GiB-month = $0.63

資源位置限制的影響

如果訊息儲存空間政策強制要求資料離開某個 GCP 地區,可能會導致地區輸出 (網路) 費增加。假設訊息經歷以下程序:

  • 在「A」地區發布
  • 轉送至「B」地區儲存
  • 傳送至位於「C」地區的訂閱者用戶端

在這種情況下:

  • 系統會向包含主題的專案收取從「A」地區輸出至「B」地區的網路費。
  • 系統會向包含訂閱項目的專案收取從「B」地區輸出至「C」地區的費用。

如果已發布訊息的儲存地區不同於該訊息的發布地區,系統才會向包含主題的專案收取輸出費 (也就是「B」和「A」實際上是兩個不同的地區);只有在已發布訊息的儲存地區不同於訂閱者用戶端的所在地區時,系統才會針對含有訂閱項目的專案向您收取輸出費用 (「C」和「B」為不同地區)。

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
Cloud Pub/Sub 說明文件