Fiyatlandırma

Pub/Sub aşağıdakilere göre fiyatlandırılır:

  • Mesaj alma ve gönderme
  • Arama özelliğiyle ilgili mesajların depolanması: anlık görüntüler ve saklanan onaylanmış mesajlar

Mesaj alma ve gönderme

Mesaj gönderme fiyatlandırması

Mesaj alma ve gönderme, bir takvim ayında aktarılan veri hacmi başına fiyatlandırılır. İlk 10 GB'lık kullanım ücretsizdir. Ardından, mesaj alma veya gönderme fiyatı TiB başına 40 ABD doları olur.

Bir mesajın veri hacmi, şunların toplamıdır:

  • Şifrelenen mesaj gövde dizesindeki bayt sayısı
  • Her özellik için anahtar boyutu ve değeri
  • Zaman damgası için 20 bayt
  • message_id dizesinin boyutu
  • İsteğe bağlı ek alanlar; örneğin erken erişim ve diğer kısıtlı erişim API'leri ile ilişkili alanlar.

Mesaj boyutundan bağımsız olarak publish, push veya pull isteği başına minimum 1.000 bayt değerlendirilir. Yani, 1.000 bayttan küçük mesajlar için istek başına birden fazla mesajı gruplandırmak daha hesaplı olur.

Alma ve gönderme ücretleri yalnızca publish istekleri için ve pull, streamingPull veya push işlemleri kullanılarak gönderilen veriler için geçerlidir. Diğer işlemler ücretsizdir.

ABD dolarından farklı bir para biriminde ödeme yaparsanız Google Cloud Platform SKU'larında para biriminizde listelenen fiyatlar geçerli olur. Listelenen ücret TiB (240 bayt, yaklaşık 1,1 trilyon bayt) başınadır.

Veri bölgesi çıkış ücretleri

Google Cloud bölgeleri arasında internet çıkışı ve mesaj gönderme ücretleri, aşağıdaki istisnalar haricinde Compute Engine ağ ücretleri ile tutarlıdır.

  • Pub/Sub kullanımında alt bölge çıkış ücreti alınmaz.
  • Google ürünlerine yapılan çıkış, çıkış ücretlerinden muaf tutulmaz.

Örneğin, us-west1 bölgesinde yayınlanan ve europe-west1 bölgesindeki bir aboneye gönderilen 1 MiB'lık mesaj, iki farklı SKU arasında şu ücretlendirmelerle sonuçlanır:

  • 2 MiB'lık Mesaj Gönderme Temel Ücreti (1 MiB'lık yayınlama ve gönderme)
  • 1 MiB'lık Bölgeler Arası Veri Gönderme Ücreti (Amerika'dan EMEA'ya)

Kullanımınızı anlamak için faturalandırma verilerinizi BigQuery'ye dışa aktarabilirsiniz. Bu ayarı yaptıktan sonra, kullanımınızı anlamak için aşağıdaki gibi bir sorgu kullanabilirsiniz:

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;

Örnek: mesaj alma ve gönderme

Tahmini toplam işlem maliyetlerinizi daha iyi açıklamak için iki aboneliği olan bir konuya, 1 MiB/saniye hızda 1.024 KB boyutunda mesajlar yayınlayan bir uygulamayı örnek verelim. Abonelerin bu hızı kullandığını varsayalım. Pub/Sub, verileri 1 MiB/saniye hızda alıp 2 MiB/saniye hızda göndererek toplamda 3 MiB/saniye veri aktarım hızına sahip olur. 30 günlük bir ay boyunca bu toplamda 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 olur. İlk 10 GB (ücretsiz) çıkarıldıktan sonra, TiB başına 40 ABD dolarından 7,406 TiB veri hacmi ile ücret 296,24 ABD doları olur.

Projeler arası faturalandırma

Pub/Sub'ı projeler arasında kullanıyorsanız bu hizmetin ücretleri, istenen kaynağı içeren projeye faturalandırılır:

  • Yayınlama işlemi için faturalandırılan proje, konuyu içeren projedir.
  • Abonelik işlemi için faturalandırılan proje, aboneliği içeren projedir.

Örneğin, abonelik A projesinde bulunuyorsa abonelikten alınan veriler için A projesi faturalandırılır. Bu durum, abonelik B projesindeki bir konuya eklenmiş olsa bile geçerlidir.

A projesindeki yetkili bir hizmet hesabı B projesindeki abonelikten gelen mesajları kullanıyorsa abonelikten alınan veriler için B projesi faturalandırılır.

Fiyatlandırma

Aşağıdaki durumlarda, ayda GiB başına 0,27 ABD doları mesaj depolama alanı ücreti alınır:

  • Onaylanan mesajları, arama özelliği kullanılarak yeniden işlenebilir duruma getirmek için saklamak amacıyla bir abonelik yapılandırılır. Bu durumda, saklanan onaylanmış mesajlar için depolama alanı ücretleri uygulanır.
  • Bir aboneliğin anlık görüntüsü oluşturulur. Bu durumda, anlık görüntünün onaylanmamış mesajlarını saklamak için mesaj depolama alanı ücretleri uygulanır. Ayrıca, aboneliğin anlık görüntü oluşturulduğunda onaylanmamış mesajlardan oluşan bir yığını varsa o yığını yedi gün boyunca depolamaya eşdeğer tutarda tek seferlik ücret alınır.

Tek bir anlık görüntü, birden fazla abonelik genelinde kullanılabilir. Bu nedenle mesajları tekrar oynatmak için onaylanan tüm mesajları saklamaktansa anlık görüntüler daha ekonomik bir yol olabilir. Anlık görüntüler genellikle küçük bir faturalandırılabilir veri hacmine sahiptir ve bu hacim anlık görüntülerin ömrü süresince yavaş yavaş artar. Onaylanmış mesajları saklamak üzere yapılandırılan abonelikler, mesaj verileri için sabit bir zaman aralığına (sabit durumda) sahip olsa da daha kullanışlı olabilir.

Örnek: saklanan onaylanmış mesajlar içeren abonelik

Tek bir aboneliğe ve şu özelliklere sahip bir konu düşünün:

  • Aboneliğin konusunun gelen veri hızı 1 MiB/saniye olarak sabittir.
  • Abone, abonelikteki verileri 1 MiB/saniye hızda tüketerek bu hıza uyuyordur ve yeni mesajlar göz ardı edilebilir düzeyde yığılıyordur.
  • Abonelik, onaylanan mesajları 7 gün saklayacak şekilde yapılandırılır.

Bu durumda, onaylanan mesaj hacmi şu şekilde büyür: 1 MiB/second x 3600 seconds/hour x 24 hours/day = 86.4 GiB/day

7 günden sonra, saklanan onaylanmış mesajların süresi dolmaya başlar ve depolanan toplam onaylanmış mesaj hacmi 7 days x 86.4 GiB/day = 605 GiB olur. Bu hacimdeki mesajları depolamanın toplam aylık ücreti yaklaşık şu şekildedir: 605 GiB-month x $0.27/GiB-month = $163

Örnek: anlık görüntü mesajı depolama alanı ücretleri

Anlık görüntü mesaj depolama alanı ücretleri, anlık görüntünün konusuna yayınlanan yeni mesajlar için kademeli olarak artan ücreti ve oluşturulma sırasında alınan tek seferlik ücreti kapsar. Saklanan onaylanmış mesajlara sahip aboneliğin anlık görüntüsünü örnek verelim. Anlık görüntünün oluşturulduğu aboneliğin onaylanmayan mesaj yığını olmadığından, anlık görüntü daha önce silinmediği takdirde yedi gün saklanır. İlk dakikada yayınlanan veriler (60 MiB) 7 gün - 1 dakika; ikinci dakikada yayınlanan veriler ise 7 gün - 2 dakika süreyle saklanır. Süreç bu şekilde devam eder. Bu senaryoya göre, anlık görüntünün süresi dolduğunda 605 GiB boyutunda yığın oluşur; toplamda 1/2 x 605 GiB x 7 days = 2118 GiB-days depolama alanı kullanılır ve 30 günlük bir ayda bu kullanım 2118 GiB-days x (1/30 months/day) x $0.27/GiB-month = $19 olarak ücretlendirilir. Bu nedenle anlık görüntüler, onaylanan mesajların saklanmasına kıyasla daha uygun maliyetli olabilir.

Örnek: yığına sahip bir aboneliğin anlık görüntüsü

Aboneliğin, anlık görüntü oluşturulduğunda onaylanmamış mesajlardan oluşan bir yığını varsa o yığını tam yedi gün boyunca depolamaya eşdeğer tutarda tek seferlik ücret alınır. Örneğin, 10 GiB'lık onaylanmamış mesaj yığınına sahip bir aboneliği örnek verelim. Anlık görüntü oluşturulduğunda alınan tek seferlik ücret 10 GiB x 7 days / 30 days/month x 0.27/GiB-month = $0.63 olur.

Kaynak konumu kısıtlamalarıyla ilgili durumlar

Mesaj depolama politikasının, verileri Google Cloud bölgesinden çıkmaya zorlaması durumunda ek bölge çıkış (ağ) ücretleri uygulanabilir. Aşağıda belirtilen durumdaki bir mesajı ele alalım:

  • A bölgesinde yayınlanmış
  • Depolama alanı için B bölgesine yönlendirilmiş
  • C bölgesindeki bir abone istemcisine gönderilmiş

Bu durumda:

  • Konuyu içeren proje, A bölgesinden B bölgesine ağ çıkışı için faturalandırılır.
  • Aboneliği içeren proje, B bölgesinden C bölgesine çıkış için faturalandırılır.

Konuyu içeren projeden, yayınlanan mesajın yalnızca mesajın yayınlandığı bölgeden farklı bir bölgede depolanması durumunda ( A ve B farklı bölgeler olduğunda) çıkış ücreti alınır. Aboneliği içeren projeden, yayınlanan mesajın yalnızca abone istemcisinin bulunduğu bölgeden farklı bir bölgede depolanması durumunda (B ve C farklı bölgeler olduğunda) çıkış ücreti alınır.