Hız sınırlama nedir?
Hız sınırlama, bulut API'lerinin bir kullanıcının belirli bir zaman diliminde gerçekleştirebileceği istek sayısını düzenlemek için kullandığı bir denetim mekanizmasıdır. Bulut API'leri üreticileri, istek akışının hizmeti bunaltmamasını sağlamak için hız sınırlamayı kullanır. Hız sınırlama, genellikle belirli bir süredeki istekler açısından tanımlanan API çağrılarının hızına ve hacmine yönelik bir sınır ayarlar.
Bulut API'leri hız sınırlamayı neden kullanır?
- Aşırı yüklemeyi önleyin. Hız sınırlama, tek bir kullanıcının veya hizmetin çok fazla istekle dolup taşmasını önleyerek API sunucusunun kararlı ve duyarlı kalmasını sağlar.
- Adil kullanım sağlayın. Oran sınırlama, tek bir kullanıcının API kaynaklarını tekeline almamasını sağlayarak tüm kullanıcılara eşit erişim sağlayan adil kullanım ilkelerini zorunlu kılar.
- Güvenlik. Kötü amaçlı olabilecek kaynaklardan gelen istek sayısını kısıtlayarak DDoS (Dağıtılmış Hizmet Reddi) saldırılarının ve diğer kötü amaçlı davranışların azaltılmasına yardımcı olur.
- Maliyet Yönetimi. Bulut hizmeti sağlayıcıları için hız sınırlama, öngörülemeyen veya aşırı kaynak kullanımını önleyerek operasyonel maliyetleri yönetmeye yardımcı olur.
- Hizmet Kalitesi. Hız sınırlama, trafik artışlarını önleyerek tüm kullanıcılar için tutarlı bir hizmet kalitesi sağlar.
Uygulamalarınızda hız sınırlama deneyiminiz
Bulut API'lerini tümleştiren uygulamalar oluştururken, hız sınırlamayı desteklediklerini doğrulamak için belgelerine bakın. Böyle bir durumda, hız sınırları hakkında bilgi içeren üst bilgileri alır RateLimit-...
veya X-RateLimit-...
yanıtlarsınız. API'nin hız sınırlarını aşmadığınızdan emin olmak için uygulamanızda bu bilgileri kullanabilirsiniz. Örneğin, RateLimit-Remaining
üst bilgi geçerli pencerede kalan isteklerin sayısını gösterir. Bu üst bilgi 0 olarak ayarlanmış bir yanıt alırsanız hız sınırına ulaştığınızı ve başka bir istek göndermeden önce sonraki pencereyi beklemeniz gerektiğini biliyorsunuzdur. Üst bilgi, RateLimit-Reset
hız sınırının sıfırlanması zamanını gösterir. Bazı API'lerin üst bilgileri yalnızca bir eşiğe ulaştıktan sonra (örneğin, isteklerin %10'una sahip olduğunuzda) gönderdiğini RateLimit-...
unutmayın.
Hız sınırını aştığınızda, API http 429 (Çok Fazla İstek) durum kodu döndüren isteklerinizi kısıtlar. Bazı API'ler, başka bir istek göndermeden önce ne kadar beklemeniz gerektiğini belirten bir Retry-After
üst bilgi de gönderebilir.
Azaltmayı önlemek ve uygulamanızın yanıt vermeye devam etmesini sağlamak için uygulamanızda hız sınırlaması uygulamanız gerekir. Teknoloji yığınınıza bağlı olarak, uygulamanızda hız sınırlamasını işlemenize yardımcı olan farklı kitaplıklar vardır. Uygulamanızda hız sınırlamayı uyguladıktan sonra hız sınırlamayı düzgün işlenip işlemediğini test edin.