Kotalar ve sınırlar

Bu belgede Pub/Sub için uygulanan kotalar ve kaynak sınırları hakkında bilgi verilmektedir.

Kotalarınızı izlemek (konu veya abonelik kullanımı gibi) hakkında daha fazla bilgi edinmek için İzleme'ye bakın.

Kota kullanımını görüntüleme ve kota sınırlarını yönetme

API ve hizmet kotaları kontrol panelini kullanarak belirli bir proje için mevcut kotaları ve kullanımı görüntüleyebilirsiniz. Ayrıca bu kontrol panelini tek bir kotayı değiştirmek için de kullanabilirsiniz.

Birden fazla kotayı değiştirmek için IAM ve yönetici kotaları kontrol panelini kullanın

Yukarıdaki kontrol panellerinden birini kullanarak şunları yapabilirsiniz:

  • Kotalarınızı düşürme.
  • Daha yüksek kota sınırları için başvuru sürecini başlatma.

Kota birimleri

Ölçülen her istek ya da yanıt, 1 KB veya istek ya da yanıtın toplam boyutu arasından daha büyük olan değer olarak sayılır.

Her bir istek veya yanıt için kota kullanımı en yakın 1 kB'lık değere yuvarlanır. Her biri 50 baytlık 100 mesajı ve 30 bayta denk bir konu adı uzunluğu olan bir publish isteği olduğunu düşünelim. Bu isteğin kota kullanımı max(1, ceil(5030/1000)) = 6kB olur.

Proje kullanım ilişkilendirmesi

Push abonesi işleme hızı için kota kullanımı, push aboneliğini içeren projeye yazılır.

Aşağıdaki kotalar için kullanım, istenen kaynağı içeren projeye (yani konu veya abonelik adında görünen projeye) değil, çağrıyı yapanın kimlik bilgileriyle ilişkilendirilen projeye yazılır:

  • Yayıncı işleme hızı
  • Abone işleme hızı
  • Yönetici işlemleri

Örneğin: A projesindeki bir hizmet hesabı, B projesindeki bir konuya yayın yapmak için publish isteği gönderirse kota A projesine yazılır. Her istek, bir proje kimliğini de içeren kimlik bilgileri barındırır.

Kota sınırları

Aşağıdaki tabloda listelenen kotalar, API ve hizmet kotaları kontrol panelinde proje bazında görüntülenip düzenlenebilir.

Kota Varsayılan kota sınırı Açıklama
Yayıncı işleme hızı Dakikada 60.000.000 kB (1.000 MB/sn) Kota kullanımı, PublishRequest isteğinde bulunan mesajların boyutuna göre belirlenir:

Birden çok mesajın tek bir publish isteğine dahil olabileceğini ve mesaj başına ek kota ücreti olmadığını unutmayın.

Abone işleme hızı Dakikada 120.000.000 (2.000 MB/sn) Pull abonelikleri için kota kullanımı, Pull yanıtlarının boyutuna göre belirlenir ve şunları içerir:

Ek olarak, Acknowledge ve ModifyAckDeadline istekleri de bu kotaya dahil edilir:

  • AcknowledgeRequest (RPC)
  • ModifyAckDeadlineRequest (RPC)
    Push abonesi işleme hızı Dakikada 6.000.000 kB (100 MB/sn) Push uç noktasına yapılan push teslimatı istekleri için kota kullanımı, push uç noktasına yapılan isteklerin boyutuna göre belirlenir.
    StreamingPull abonesi işleme hızı Dakikada 120.000.000 kB (2.000 MB/sn) Kota kullanımı, StreamingPullResponses öğelerinin boyutuna bağlıdır:

    İstemci Kitaplıklarının mümkün olduğunda StreamingPull işlemlerini kullandığını unutmayın.

    Açık StreamingPull bağlantılarının sayısı Bir defada 30.000 açık bağlantı Herhangi bir zaman noktasında açık olan StreamingPull bağlantılarının sayısı. StreamingPull'a bakın.
    Yönetici işlemleri Dakikada 6.000 (100 işlem/sn) GetTopicRequest gibi her yönetici işlemi bu kotaya bir birim yazdırır.

    Genel olarak, yönetici işlemleri kümesi Get*, List*, Create*, Delete*, ModifyPushConfig, SetIamPolicy, GetIamPolicy ve TestIamPermissions işlemlerinden oluşur.

    Kaynak sınırları

    Kaynak Sınırlar
    Proje 10.000 konu
    10.000 abonelik 5.000 anlık görüntü
    Konu 10.000 ekli abonelik
    5.000 ekli anlık görüntü
    Abonelik Onaylanmayan mesajları yayınlandıkları tarihten itibaren 7 gün boyunca kalıcı depolamada saklar. Saklanan mesajların sayısı için bir sınırlama yoktur.
    İstemci varlığı 31 gün boyunca tespit edilmemiş abonelikler otomatik olarak silinebilir. Varlık, Pull ve Acknowledge gibi çağrılar ve başarılı push işlemleri aracılığıyla tespit edilir.
    Publish isteği 10 MB (toplam boyut)
    1.000 mesaj
    Mesaj Mesaj boyutu (data alanı): 10 MB (maksimum istek boyutu)
    Mesaj başına özellik sayısı: 100
    Özellik anahtarı boyutu: 256 bayt
    Özellik değeri boyutu: 1024 bayt
    Push teslimatı mesajları Bekleyen mesajlar, her abonelik için uygulanan aşağıdaki sınırların her ikisine birden tabidir:
    • 10 MB (bu sınır, mesaj verileri ve özellikleri dahil olmak üzere tüm bekleyen mesajların toplam boyutu için geçerlidir)
    • Toplam 1.000 bekleyen mesaj
    Uç noktanız hızlı yanıt verirse (100 ms'den hızlı) muhtemelen bu sınırların uygulanmasına gerek kalmaz. Push Abonesi Kılavuzu'na bakın.
    StreamingPull akışları Açık akış başına 10 MB/s
    Pull/StreamingPull mesajları Bu hizmet, bağlantı başına toplam bekleyen StreamingPull mesajı sayısı için sınırlamalar uygulayabilir. Böyle bir sınırla karşılaşırsanız mesajları onaylama hızınızı ve kullandığınız bağlantı sayısını artırın.

    İpuçları ve uyarılar

    Yüksek hacimli işlemler

    Google Cloud SDK gcloud aracını normal bir kullanıcı hesabıyla (yani, hizmet hesabı olmayan bir hesapla) kullanırsanız Pub/Sub işlemleri manuel işlemler için uygun olan bir hızla sınırlandırılır. Bu sınırı aşan hızlar, RESOURCE_EXHAUSTED hatasına yol açar. Bu hatayı hizmet hesabı kimlik bilgilerini kullanarak çözebilirsiniz. Otomasyon için Google Cloud SDK'dan kimlik bilgilerini kullanmak isterseniz Pub/Sub işlemleriniz için bir hizmet hesabı etkinleştirin.

    Kota uyuşmazlıkları

    Yayınlanan veya alınan mesajlar 1000 bayttan küçük olduğunda kota uyuşmazlıkları meydana gelebilir. Örneğin:

    • Ayrı isteklerde 10 tane 500 baytlık mesaj yayınlarsanız yayıncı kota kullanımınız 10.000 bayt olur. Bunun nedeni, 1000 bayttan küçük mesajların otomatik olarak bir sonraki 1000 baytlık değere yuvarlanmasıdır.

    • Bu 10 mesajı tek bir pull yanıtında alırsanız toplam kotayı belirlemek için her mesajın gerçek boyutunun toplanması nedeniyle abone kota kullanımınız yalnızca 5 kB olabilir.

    • Bunun tam tersi de geçerlidir. Tek bir publish isteğinde birden fazla mesaj yayınlar veya mesajları ayrı Pull isteklerinde alırsanız abone kotası kullanımı yayıncı kotası kullanımından daha fazla olabilir.