En İyi Uygulamalar ve Sınırlamalar

BatchJobService hizmetini kullanırken şu yönergeleri göz önünde bulundurun:

  • Daha iyi işleme hızı için çok sayıda küçük işe kıyasla daha az büyük iş tercih edilir.
  • AddBatchJobOperationsRequest başına en fazla 1.000 işlem eklenmesi ve geri kalan işlemleri aynı işe yüklemek için sequence_token kullanılması önerilir. İşlemlerin içeriğine bağlı olarak tek bir AddBatchJobOperationsRequest içinde çok fazla işlem yapılması REQUEST_TOO_LARGE hatasına neden olabilir. İşlem sayısını azaltıp AddBatchJobOperationsRequest öğesini yeniden deneyerek bu hatayı giderebilirsiniz.
  • Aynı hesap için birden fazla eşzamanlı iş gönderirken büyük iş boyutlarını koruyarak işlerin aynı anda aynı nesnelerde çalışma olasılığını azaltmaya çalışın. Aynı nesne kümesini değiştirmeye çalışan birçok tamamlanmamış iş (RUNNING durumunda) kilitlenmeye benzer durumlara, ciddi şekilde yavaşlamaya ve hatta iş hatalarına yol açabilir.
  • Sonuç öngörülemez olabileceğinden, aynı nesneyi aynı işte değiştiren birden fazla işlem göndermeyin.
  • Daha iyi işleme hızı için yüklenen işlemleri işlem türüne göre sıralayın. Örneğin, işinizde kampanya, reklam grubu ve reklam grubu ölçütleri ekleme işlemleri varsa yüklemenizdeki işlemleri, önce tüm kampanya işlemleri, ardından tüm reklam grubu işlemleri ve son olarak da tüm reklam grubu ölçütü işlemleri gelecek şekilde sıralayın.
  • İş durumunu çok sık yoklamayın. Aksi takdirde hız sınırı hatalarına yol açma riskiyle karşı karşıya kalırsınız.
  • Sayfa başına 1.000'den fazla sonuç getirmeyin. Sunucu, yük veya diğer faktörler nedeniyle daha az veri döndürebilir.
  • Sonuç sırası, toplu işlem için yükleme sırası ile aynı olur.
  • Bir toplu işin iptal edilmeden önce ne kadar süreyle çalışmasına izin verileceğine ilişkin bir üst sınır ayarlayabilirsiniz. Yeni bir toplu iş oluştururken metadata.execution_limit_seconds alanını saniye cinsinden tercih ettiğiniz zaman sınırına ayarlayın. metadata.execution_limit_seconds ayarlanmazsa varsayılan bir süre sınırı olmaz.

Sınırlamalar

  • Her BatchJob bir milyona kadar işlemi destekler.
  • Her hesapta aynı anda en fazla 100 etkin veya beklemedeki iş olabilir.
  • 7 günden daha eski olan beklemedeki işler otomatik olarak kaldırılır.