Pub/Sub 定價
Pub/Sub 的費用包含三個部分:
- 發布及傳送訊息的總處理量費用
- 跨 Google Cloud 可用區或區域邊界的總處理量相關資料移轉費用
- 快照、按主題保留的訊息和按訂閱項目保留的已確認訊息的儲存空間費用
Pub/Sub 服務費用是依據用量 (發布、傳送或儲存的位元組數) 計算。
相較之下,Pub/Sub Lite 的總處理量和儲存空間費用是依據保留的容量計算。
這兩項服務的資料移轉費用是根據用量計算,而非預留容量。
事前準備
您必須瞭解 Pub/Sub 或 Pub/Sub Lite 的架構,以及每項產品的常用術語,才能使用這份文件。詳情請參閱 Pub/Sub 架構。
計費示例
下表比較 Pub/Sub 和 Pub/Sub Lite 系統在北美洲的樣本負載情況下,每月費用的差異。這個範例假設訊息儲存期為 24 小時、Pub/Sub Lite 的資源使用率為 50%,以及 Pub/Sub 的訂閱類型為提取或推送。其他類型的訂閱方案可能會產生額外費用。
發布處理量 (以 MiBps 為單位) | 訂閱項目數 | 可用區 Lite 主題 | 區域 Lite 主題 | Pub/Sub |
---|---|---|---|---|
10 | 1 | $169 美元 | $608 美元 | $2,000 美元 |
10 | 2 | $214 | NT$23,540 | $3,000 美元 |
100 | 1 | $1,688 美元 | $6,075 美元 | $19,760 美元 |
100 | 2 | $2,138 美元 | $7,875 美元 | $29,640 美元 |
比較 Pub/Sub 和 Pub/Sub Lite 的費用時,請考慮兩種產品的功能差異。詳情請參閱選擇 Pub/Sub 或 Pub/Sub Lite。
Pub/Sub 服務定價
本節的定價詳細資料僅適用於 Pub/Sub,不適用於 Pub/Sub Lite。本章節涵蓋下列主題:
處理量費用
處理量是指在一段時間內,寫入 Pub/Sub 主題的總位元組數 (發布處理量),或從主題訂閱項目讀取的總位元組數 (訂閱處理量)。
每個日曆月,帳單帳戶的 Message Delivery Basic SKU 前 10 GiB 的處理量皆免費。其後所有 Google Cloud 區域的價格均為每 TiB$40 美元。不過,如果您使用的是匯入主題或匯出訂閱項目,請參閱下個部分。
BigQuery 訂閱方案的處理量費用
在所有 Google Cloud 區域中,BigQuery 訂閱項目的讀取 (訂閱通量) 和寫入 BigQuery 的費用為每 TB$50。不會產生額外的 BigQuery 資料擷取費用。不過,您仍須支付 BigQuery 的其他費用,例如儲存空間和資料擷取費用。詳情請參閱 BigQuery 定價一文。前 10 GiB 的 BigQuery 訂閱內容處理量需付費。
Cloud Storage 訂閱項目的處理量費用
在所有 Google Cloud 區域中,從訂閱項目讀取資料 (訂閱內容處理量) 並寫入 Cloud Storage 的費用為每 TiB$50 美元。Cloud Storage 訂閱方案將檔案寫入值區時,可能會收取其他類型的額外費用。包括儲存、擷取和複製等項目的費用。詳情請參閱 Cloud Storage 定價。前 10 GiB 的 Cloud Storage 訂閱內容處理量不免費。
匯入主題的總處理量費用
在所有 Google Cloud 區域中,匯入主題 (適用於 Kinesis Data Streams) 的費用為每 TiB $50,可將資料擷取至 Pub/Sub (發布處理量)。
在所有 Google Cloud 區域中,匯入主題 (適用於 Cloud Storage) 的費用為 每 TiB 80 美元,可將資料擷取至 Pub/Sub (發布處理量)。
匯入主題將資料匯入 Pub/Sub 主題時,可能會產生其他類型的來源專屬額外費用。這些費用包括 Kinesis Data Streams 來源的 AWS 傳出費用,以及 Cloud Storage 來源的 Cloud Storage 作業費用。前 10 GiB 的匯入主題吞吐量需付費。
訊息量的計算方式
訊息使用的資料量為下列訊息屬性大小的總和:
- 編碼訊息內文字串的位元組數
- 每個屬性的鍵值大小及屬性值
- 計為 20 個位元組的時間戳記
message_id
字串的大小- 額外的選用欄位大小,例如與搶先體驗內容相關聯的欄位,或與限制存取 API 相關聯的欄位。
無論要求中的訊息大小為何,系統會以至少 1 KB 來評估每個要求。因此,如果訊息小於 1 KB,在單一要求中批次處理多則訊息的費用可能較為低廉。
儲存空間費用
訂閱項目中未確認的訊息最多可免費儲存一天。
系統針對 Pub/Sub 儲存空間收費的情況有以下四種:儲存空間費用為每月每 GiB $0.27 美元,會在下列情況下收取:
- 主題已設為保留所有訊息。在這種情況下,系統會儲存已發布至主題的所有訊息,因此會產生訊息儲存費用。
- 訂閱項目設為保留已確認的訊息。在這種情況下,會針對保留的已確認訊息收取儲存費。
- 建立訂閱項目的快照。在這種情況下,會針對儲存快照的未確認訊息收取訊息儲存費。
訂閱項目已設為保留未確認訊息超過 1 天,且訂閱項目的待處理工作已超過 1 天。在這種情況下,會針對發布後保留 1 天的未確認訊息收取儲存費。 請注意,如果未確認的訊息已保留在主題中,則不會產生額外費用。
假設主題未設定保留期,且附加的訂閱項目保留期設為預設的 7 天。如果訂閱者能在發布後 1 天內處理訊息,訂閱項目擁有者就不會針對未確認訊息收取儲存空間費用。不過,如果訂閱者在發布後的 24 小時內無法處理未確認訊息,系統會針對保留超過 1 天的未確認訊息收取儲存費。
假設主題的保留時間設為 4 天,而附加的訂閱項目的保留時間設為預設的 7 天。由於這些訊息已由主題保留,因此訂閱項目擁有者不會針對發布後 4 天內保留的未確認訊息,支付儲存空間費用。如果訂閱者在發布後 4 天內無法處理訊息,訂閱項目擁有者將額外收費 3 天 (除非訂閱者能在 7 天內處理訊息)。
注意:如果訂閱項目在快照建立時有待處理的未確認訊息,則會收取一次性費用,金額相當於儲存待處理工作七天的費用。
如果選擇在個別訂閱項目中保留已確認的訊息,則可讓訂閱項目的擁有者享有最佳彈性,但這通常也是費用最高昂的儲存空間機制。最平價的儲存空間機制為透過主題保留訊息,這是因為由主題保留的訊息可供附加至該主題的所有訂閱項目使用,而且個別訂閱項目不會產生額外的費用。如果這些訊息已透過主題保留功能保留,我們不會向訂閱項目擁有者收取保留未確認訊息的費用。另外,單一快照可以用於多個訂閱項目,因此快照也是相當經濟實惠的選項。
請注意,如果主題保留設定有所變更,未確認訊息的費用也可能會隨之變動。舉例來說,如果主題擁有者停用訊息保留功能,訂閱項目擁有者可能會開始為未確認訊息支付儲存空間費用。
資料傳輸費用
不同 Google Cloud 區域之間的網際網路資料傳輸和訊息傳遞費率與 虛擬私有雲網路費率相同,但下列情況除外:
- 使用 Pub/Sub 無須支付區域資料傳輸費。
- 但輸出至 Google 產品須支付資料轉移費。
- 您不必為將資料轉移至 Pub/Sub 而付費。 舉例來說,如果發布者位於其他區域或可用區,您必須支付原始服務的資料傳輸費用,但不必支付傳入資料傳輸費用。同樣地,如果發布者是從 Amazon Web Service (AWS) 或私人資料中心發布內容,則不必向 Pub/Sub 支付資料傳輸費用。
每當您的訊息超過區域邊界時,系統就會向您收取資料傳輸費用。如果您在一個區域有數個訂閱者,且儲存訊息的位置與該區域不同,則您必須支付向每個訂閱者傳送訊息的個別資料傳輸費用。
因訊息儲存空間政策而產生的資料傳輸費用
如果訊息儲存空間政策強制要求資料離開某個 Google Cloud 區域,可能會導致區域資料傳輸費增加。舉例來說,假設訊息包含下列事件:
- 在「A」區域發布
- 轉送至「B」區域儲存
- 傳送至位於「C」區域的訂閱者用戶端
在這種情況下,帳單情況說明如下:
- 系統會向包含主題的專案收取從「A」區域傳輸至「B」區域的資料費。
- 系統會向包含訂閱項目的專案收取從「B」區域傳輸至「C」區域的費用。
如果已發布訊息的儲存區域不同於該訊息的發布區域,系統才會向包含主題的專案收取資料傳輸費 (也就是「B」和「A」實際上是兩個不同的區域)。只有在已發布訊息的儲存區域不同於訂閱者用戶端的所在區域時 (即「C」和「B」為不同區域),系統才會向包含訂閱項目的專案收取資料傳輸費。
經過篩選的訊息費用
Pub/Sub 會自動確認不符合篩選條件的訊息,但您仍必須為這些訊息支付總處理量費用。篩選後的郵件不需支付資料傳輸費
1,000 位元組這個下限規定不適用於 Pub/Sub 服務自動確認的訊息。無論訊息有多小,訊息傳送費用都是根據這些訊息的資料量 (以位元組為單位) 計算。
跨專案 Pub/Sub 計費
如果您跨專案使用 Pub/Sub,則 Pub/Sub 費用將計入包含所要求資源的專案:
- 發布費用將計入包含主題的專案。
- 訂閱費用將計入包含訂閱項目的專案。
舉例來說,如果訂閱項目存在於「A」專案中,則從該訂閱項目提取資料的費用將會計入「A」專案,即使該訂閱項目附加於「B」專案中的某個主題。
如果「A」專案中的某個授權服務帳戶消費了來自「B」專案中某個訂閱項目的訊息,則從該訂閱項目提取資料的費用將會計入「B」專案。
Pub/Sub Lite 服務定價
下列定價詳細資料僅適用於 Pub/Sub Lite,而不適用於 Pub/Sub。除非另有說明,否則這些詳細資料適用於區域和區域 Lite 主題。包含下列各節:
處理量費用
處理量是指在一段時間內,寫入 Pub/Sub Lite 主題的位元組總數 (發布處理量),或從主題訂閱項目讀取的位元組總數 (訂閱處理量)。
Pub/Sub Lite 處理量費用是依據已佈建或保留的處理量容量計算,而非實際處理量 (MiBps) 或計費週期內的總位元組數 (每月 MiB)。處理容量是以容量單位佈建及計費。您可以使用 Lite 保留項目,為同一個區域中一或多個主題佈建處理容量。
下表列出 Pub/Sub Lite 系統的處理量和儲存空間費用。
Lite 保留項目的處理量
Lite 保留項目可用於預留處理容量,並在特定區域的一或多個主題中共用。必須為區域 Pub/Sub Lite 主題指定 Lite 保留項目
Lite 保留項目的處理容量是以容量單位為單位計算。您只能為保留項目佈建整數容量單位。下表列出了不同作業的處理量所需的容量單位數量:
所需容量單位 | 可用區 Lite 主題 | 區域 Lite 主題 |
---|---|---|
1 MiBps 的發布處理量 | 1 個容量單位 | 4 個容量單位 |
1 MiBps 的訂閱處理量 | 0.5 個容量單位 | 2 個容量單位 |
保留項目中所有 Lite 主題的分區數量不得超過保留的容量單位數量。
計算單一主題使用保留額度的處理量容量費用
下文將說明如何計算單一區域 Lite 主題的處理量容量費用,前提是該主題使用了預留空間:
- 主題類型 = 可用區 Lite 主題
- 主題數 = 1
- 分區數量 = 5
- 尖峰發布處理量 = 5 MiBps
- 發布總處理量所需的容量單位 = 5
- 尖峰訂閱處理量 = 10 MiBps
- 訂閱處理量所需的容量單位 = 5
- 所需總容量單位 = 5 + 5 = 10
- 在北美洲使用 10 個容量單位的每月費用 = $45 美元
如要達到相同的處理量,並使用有 5 個分區的區域 Lite 主題,您需要 40 個容量單位的保留項目,其中 20 個用於發布處理量,20 個用於訂閱處理量。
您隨時可以變更預留容量的容量單位數量。 不過,您會依據過去 24 小時內佈建的最大容量支付費用。舉例來說,如果您在週一上午 10 點將保留項目的容量從 40 個單位變更為 10 個單位,那麼在週二上午 10 點前,您會依每小時 40 個容量單位的費用計費,之後則依每小時 10 個容量單位的費用計費。
請注意,保留項目的容量可用於與保留項目位於相同區域的任何主題,以便發布與訂閱處理。如要進一步瞭解預留名單,請參閱「建立及管理 Lite 預留名單」。
未保留 Lite 方案時的處理量
本節內容只適用於區域 Lite 主題。
您可以選擇不使用保留項目,並為單一主題保留發布與訂閱處理容量。在這種情況下,系統會向您收取目前保留容量的費用,而非運作滿 24 小時的最大容量。
請注意,未設定任何保留項目的容量必須介於下列範圍內:
- 每個分區每秒發布 4 和 16 MiBps (相當於 4 和 16 個容量單位)。
- 每個分區的訂閱量為每秒 4 和 32 MiB (相當於 2 和 16 個容量單位)。
計算單一主題的處理量容量費用 (不含保留額度)
下文將說明如何計算單一區域 Lite 主題的處理量容量費用,假設該主題未使用保留額:
- 主題類型 = 可用區 Lite 主題
- 主題數 = 1
- 分區數量 = 4
- 尖峰發布處理量 = 16 MiBps
- 發布總處理量所需的容量單位 = 16
- 尖峰訂閱處理量 = 16 MiBps
- 訂閱總處理量所需的容量單位 = 8
- 所需的總容量單位 = 16 + 8 = 24
- 在北美洲使用 24 個容量單位的每月費用 = $108 美元
儲存空間費用
與 Lite 總處理量一樣,您需要支付主題的儲存空間容量費用。Pub/Sub Lite 會依據您在一個月內佈建的最大儲存空間量收取費用。每個分區必須至少有 30 GiB 的儲存空間。
區域 Lite 主題會將資料儲存在某個區域的兩個可用區中,而可用區 Lite 主題則只會將資料儲存在某個區域的一個可用區中。發布每個位元組的訊息時,區域 Lite 主題會使用兩個位元組的儲存空間。因此,發布至區域 Lite 主題的每位元儲存空間費用是可用區 Lite 主題的兩倍。
如要估算 Pub/Sub Lite 系統的儲存空間容量,請參閱下列清單:
決定訊息的儲存時間。
如要估算所需的總儲存空間,請將每個分區的平均預期處理量乘以儲存訊息所需的時間長度。舉例來說,如要在區域 Lite 主題的 10 個區隔中,每秒發布 40 MiB 的訊息並保留訊息一天,請佈建 3375 GiB 的儲存空間 (相當於 40 MiBps * 每小時 3600 秒 * 一天 24 小時 * 1 GiB/1024 MiB)。在北美地區,您需要支付 $135 美元的儲存空間費用 (相當於 3375 GiB * 24 小時/天 * 30 天/月 * $0.04 美元/GiB-月區)。區域 Lite 主題的資料會儲存在兩個可用區,因此儲存空間費用會翻倍為 $270 美元。
考慮不均勻的金鑰分布。
所有分區都會分配相同的儲存空間容量。如果預期某些分區的磁碟區大小會比其他分區大,請為所有分區預留足夠的儲存空間,以便容納最大分區的資料。
訊息量的計算方式
計算訊息大小時,系統會將每則訊息的最低大小 (256 位元組) 計入處理量和儲存空間。如果訊息大於 256 個位元組,則訊息大小為下列各項內容的總和:
- 編碼訊息內文字串的位元組數
- 每項屬性的鍵與值位元組數
- 排序鍵的位元組數
- 事件時間戳記的 12 個位元組
資料傳輸費用
只有在訂閱者位於與主題位置不同的可用區或區域時,才會產生 Pub/Sub Lite 資料移轉費用。不同 Google Cloud 區域之間的網際網路輸出資料和訊息傳遞費用與 虛擬私有雲網路費率相同,但下列情況除外:
對於訂閱者位於與主題相同區域的區域 Lite 主題,不會收取區域資料傳輸費用。
但轉移至 Google 產品的資料仍須支付資料轉移費。
使用美元以外的貨幣支付費用
如果您使用美元以外的貨幣付費,系統將按照 Google Cloud SKU 頁面上列出的相應貨幣價格計費。費用計算單位為 TiB (2^40 個位元組,約為 1.1 兆位元組)。
後續步驟
使用Pricing Calculator計算 Pub/Sub 費用。
請參閱 Pub/Sub SKU 群組。