Entegrasyonunuz Meshy API'sini çağırırken 429, RateLimitExceeded veya NoMoreConcurrentTasks hataları alıyorsa, bu kılavuz bu sınırların neden var olduğunu ve entegrasyonunuzu bu sınırlar içinde çalışacak şekilde nasıl tasarlayacağınızı açıklar.
Hız sınırları neden vardır
Meshy'nin API'si, 3D modeller, dokular ve ilgili varlıklar üretmek için kullanılan paylaşılan GPU işlem gücünün önünde yer alır. Hız sınırları ve eşzamanlılık üst sınırları, bu paylaşılan altyapıyı korur; böylece üretim kalitesi ve tamamlanma süresi platformdaki her kullanıcı için tutarlı kalır. Her hesabın, mevcut planına bağlı olarak, belirli bir zaman aralığında yapabileceği maksimum istek sayısı ve aynı anda çalıştırabileceği (sırada bekleyen veya devam eden) maksimum üretim görevi sayısı vardır.
İstek sınırı ve sıra/eşzamanlılık sınırı farkı
İki ayrı sınır vardır ve farklı şekillerde devreye girerler:
İstek hızı sınırı (429 / RateLimitExceeded): Dakikada yapabileceğiniz API çağrisi sayısını (ör. görev oluşturma, durum sorgulama) sınırlar. Bunu aşmak, fiilen kaç görevin çalıştığından bağımsız olarak API'yi çok sık çağırdığınız anlamına gelir.
Eşzamanlılık / sıra sınırı (NoMoreConcurrentTasks): Aynı anda sırada bekletebileceğiniz veya işleyebileceğiniz üretim görevi sayısını sınırlar. Bunu aşmak, zaten maksimum sayıda aktif görevinizin olduğu ve yeni bir tane göndermeden önce birinin bitmesini beklemeniz gerektiği anlamına gelir.
Planınıza ait güncel istek ve eşzamanlılık sınırlarını Meshy kontrol panelinizden kontrol edin, çünkü bunlar plan seviyesine göre değişebilir.
429 hataları için geri çekilme (backoff) stratejisi
Bir 429 veya RateLimitExceeded yanıtı aldığınızda, aynı isteği hemen yeniden denemeyin. Bunun yerine:
Üstel geri çekilme (exponential backoff) kullanın: Kısa bir aralık bekleyin, ardından her sonraki başarısızlıkta bu arayı makul bir maksimuma kadar ikiye katlayın.
Geri çekilme aralığınıza jitter (küçük rastgele bir sapma) ekleyin; böylece sisteminizdeki birden fazla iş aynı anda yeniden denemesin.
Yanıtta varsa, bekleme süresini tahmin etmek yerine Retry-After veya hız sınırı başlıklarına uyun.
Kalıcı bir başarısızlığın sonsuz döngüye girmemesi için istek başına yeniden deneme sayısını sınırlayın.
Eşzamanlılık sınırlarına göre planlama
NoMoreConcurrentTasks hatası, hesabınızın aktif görev üst sınırına ulaştığınız anlamına gelir. Üretimde bu sınıra takılmamak için:
Kendi uygulamanızda, yalnızca önceki bir görev tamamlandığında veya aktif sayınız sınırın altına düştüğünde yeni bir üretim görevi gönderen yerel bir sıra veya iş zamanlayıcı tutun.
Tahmine dayalı gönderim yapmak yerine, bir alan ne zaman boşalır anlamak için görev durumunu sorgulayın (veya iş akışınızda destekleniyorsa webhooks kullanın).
Tüm istekleri aynı anda ateşlemek yerine toplu üretim işlerini gruplandırın ve hızlarını kısıtlayın — bu hem istek hızınızı hem de eşzamanlı görev sayınızı dengeler.
429/NoMoreConcurrentTasks hatalarındaki bir artışı, kullanıcılarınızı etkilemeden önce fark edebilmek için kendi tarafınızda izleme/uyarı mekanizmaları kurun.
Başarısız veya tatmin edici olmayan üretimleri yeniden deneme
Meshy API'si şu anda bireysel veya studio planları için mevcut bir üretimin yerleşik "yeniden denemesini" desteklememektedir — sonuç beklentilerinizi karşılamıyorsa, normal şekilde kredi harcayan yeni bir üretim isteği gönderirsiniz. Otomatik ardışık düzeniniz geçici hataları (429 gibi) işlerken, yeniden deneme mantığınızın geri çekilme sonrası yalnızca orijinal isteği yeniden gönderdiğinden, her seferinde yinelenen üretim görevleri oluşturmadığından emin olun.
Planınızı ne zaman yükseltmeyi düşünmelisiniz
Geri çekilme ve eşzamanlılık farkındalığına sahip sıralama uyguladıysanız ve hâlâ sürekli olarak hız veya eşzamanlılık sınırlarına takılıyorsanız, bu genellikle entegrasyonunuzun işlem hacmi ihtiyaçlarının mevcut planınızın sınırlarını aştığının işaretidir. Kontrol panelinizden mevcut planınızın istek ve eşzamanlılık haklarını kontrol edin ve daha yüksek, sürekli işlem hacmine ihtiyacınız varsa yükseltmeyi düşünün veya kurumsal düzeyde API erişimi konusunda Meshy satış ekibiyle iletişime geçin.
SSS
1. Bir 429 veya RateLimitExceeded hatası ne anlama gelir?
Planınız için belirli bir zaman aralığında izin verilen API istek sayısını aştığınız anlamına gelir. İstek hızınızı yavaşlatın ve yeniden denemeden önce üstel geri çekilme kullanın.
2. NoMoreConcurrentTasks ne anlama gelir?
Hesabınız için zaten maksimum sayıda üretim görevinin sırada beklediğini veya devam ettiğini anlamına gelir. Daha fazla görev göndermeden önce mevcut bir görevin bitmesini bekleyin veya aynı anda gönderdiğiniz görev sayısını azaltın.
3. Hesabımın hız ve eşzamanlılık sınırlarını nasıl öğrenebilirim?
Mevcut planınızla ilişkili sınırlar için Meshy kontrol panelinizi kontrol edin, çünkü bunlar plan seviyeleri arasında farklılık gösterebilir.
4. Meshy, üretim görevleri için otomatik yeniden denemeyi destekliyor mu?
Hayır, bireysel veya studio planları için desteklememektedir — başarısız veya tatmin edici olmayan bir üretim, normal şekilde kredi harcayan yeni bir istek olarak yeniden gönderilmelidir. Kurumsal müşteriler yeniden deneme işlevselliği hakkında satış ekibiyle iletişime geçmelidir.
5. Bir üretim ardışık düzeninde bu hatalara takılmamak için en iyi yol nedir?
Eşzamanlılık sınırınızın altında kalmak için gönderimleri kısıtlayan yerel bir sıra uygulayın, 429 yanıtları için jitter'lı üstel geri çekilme ekleyin ve kullanıcılarınızı etkilemeden önce müdahale edebilmek için hata oranlarını izleyin.
6. Hız sınırları nedeniyle planımı ne zaman yükseltmeliyim?
Geri çekilme ve eşzamanlılık farkındalığına sahip sıralamayı zaten uyguladıysanız ve hâlâ düzenli olarak bu sınırlara takılıyorsanız, kullanımınız muhtemelen mevcut planınızı aşmıştır — kontrol panelinizi kontrol edin veya daha yüksek işlem hacimli bir plan hakkında satış ekibiyle iletişime geçin.
İlgili Makaleler