Proxy Kullanım Sınırları
Proxy kullanım sınırları, bir hizmetin sizin için ne kadar veri taşıyabileceğini, ona ne hızda iş gönderebileceğinizi ve hangi hedeflere ulaşabileceğini belirler. Aynı görev için birden fazla kural geçerli olabilir. Sınırsız trafik sunulurken eşzamanlı bağlantılar sınırlandırılabilir ve belirli web sitelerine veya portlara kısıtlamalar getirilebilir. Her koşul hizmetin farklı bir bölümünü yönetir.
Bir proxy hizmeti seçerken bu koşulları uygulamanızın gerçekte yaptığı işle karşılaştırın. IP sayısı veya başarılı tek bir test, tablonun yalnızca bir bölümünü gösterir. Her sınırın neyi ölçtüğünü anlamak, kapasiteyi tahmin etmeyi ve bir görev hizmete uygun olmadığında hangi koşulun değişmesi gerektiğini belirlemeyi kolaylaştırır.
Sağlayıcı neleri sınırlandırabilir?
Bazı sınırlar, belirli bir sürede tükettiğiniz bir kaynağı tanımlar. Diğerleri belirli bir andaki iş yükünü yönetir veya bir bağlantıya izin verilip verilmeyeceğini belirler. Bir planda bu parametrelerden yalnızca biri veya ikisi belirtilse bile aşağıdaki ayrımlar yararlıdır.
| Parametre | Ölçülen değer | Neyi belirler? |
|---|---|---|
| Trafik hacmi | Aktarılan baytlar | Ürüne bağlı olarak sınırsız veya kotalı trafik |
| İstek kotası | Kota dönemi içinde sayılan işlemler | Kotaya dahil edilen işlem sayısı |
| Veri aktarım hızı | Saniye başına bit veya bayt | Verilerin ne hızda aktarılabileceği |
| İstek hızı | Saniye veya dakika başına istek | Yeni işlerin ne sıklıkla gönderilebileceği |
| Eşzamanlı bağlantılar | Aynı anda sayılan bağlantılar | Kaç bağlantının aynı anda açık kalabileceği |
| Hedefe erişim | İstenen site, adres veya işlem | Hangi kaynaklara ve işlevlere izin verildiği |
| Portlara erişim | Hedef port ve taşıma protokolü | Proxy sunucusunun hangi ağ hizmetlerine ulaşabileceği |
Sağlayıcı bu kuralları ağ kapasitesini ve işlem kaynaklarını dağıtmak, maliyetleri yönetmek ve istenmeyen faaliyetleri kısıtlamak için kullanır. Etkileri farklıdır: daha yüksek bir bağlantı sınırı aynı anda daha fazla bağlantıya izin verirken engellenen bir hedefe erişim izni, hizmetin yapabileceği görevi değiştirir. Bir koşulu değiştirmek diğerlerini otomatik olarak değiştirmez.
Eşzamanlı bağlantılar
Eşzamanlı bağlantı sınırı, aynı anda kaç bağlantının açık kalabileceğini belirler. Bir tarayıcı veya başka bir uygulama, tek bir görev için birden fazla bağlantı açabilir. Bu nedenle sekme, profil veya program iş parçacığı sayısı, bu kotanın tam olarak ne kadarının kullanıldığını göstermez.
Bağlantılar istekler arasında açık kalabilir ve HTTP/2, tek bir bağlantı üzerinden birden fazla istek taşıyabilir. Dakikada daha az istek göndermek, kullanımda olan bağlantıları mutlaka serbest bırakmaz. Eşzamanlı bağlantılar makalesi, bu kotayı nelerin tükettiğini ve neden istek sayısından farklı olduğunu açıklar.
Sınırlar birbirini etkileyebilir. Büyük bir yanıtın aktarımı daha uzun sürerse bağlantısı da daha uzun süre kullanımda kalabilir. Yeni işler başlatmaya devam eden bir program, aynı istek hızında bile bağlantı sınırına ulaşabilir. Bu noktada daha fazla paralel iş eklemek, tamamlanan iş miktarını artırmadan beklemeyi ve hataları artırabilir.
Engellenen web siteleri ve uygulamalar
Sağlayıcı belirli web sitelerine, adreslere veya işlemlere erişimi kısıtlayabilir. Trafik sınırsız ve bağlantı kapasitesi kullanılabilir olsa bile bir hedef sağlayıcının engellenenler listesinde bulunabilir. Erişim, aynı sağlayıcının ürünleri arasında da farklılık gösterebilir. Engellenen web siteleri ve uygulamalar makalesi, bu listelerin nasıl oluştuğunu ve belirli bir kaynağa erişimi nelerin belirlediğini açıklar.
Bir uygulama birden fazla hedef kullanabilir: ana sayfası açılırken ayrı bir işlevi çalışmayabilir. Proxy sağlayıcısı erişime izin verse bile hedef web sitesi kendi kısıtlamalarını uygulayabilir. Bir hatayı anlamak için önce hangi kaynağın kullanılamadığını ve isteği hangi tarafın reddettiğini belirleyin.
Engellenen portlar
Bir web sitesine erişilebilmesi, aynı sunucudaki her ağ hizmetinin kullanılabilir olduğunu göstermez. Sağlayıcı web trafiğine izin verirken posta gönderim portunu engelleyebilir. Burada önemli olan, uygulamanın istediği hedef porttur. Engellenen portlar makalesi, bunun proxy sunucusuna bağlanmak için kullanılan porttan farkını açıklar.
Taşıma protokolü desteği de bu iznin bir parçasıdır. TCP ve UDP, veri taşımanın farklı yollarıdır; belirli bir numaralı TCP portuna erişilebilmesi, aynı numaralı UDP portuna da erişilebildiğini göstermez. Gerekli taşıma protokolü ürün tarafından desteklenmeli ve kullanımına izin verilmelidir. Daha fazla IP veya daha yüksek bağlantı kotası, eksik bir izni sağlayamaz.
Veri hacmi, aktarım hızı ve istek sayıları
Trafik hacmi
Sağlayıcıya ve ürüne bağlı olarak trafik sınırsız olabilir veya veri kotasıyla satılabilir. Bazı sağlayıcılar, gigabayt cinsinden aylık paket gibi sabit miktarda veri satar. Böyle bir pakette geçerlilik süresini, kotanın ne zaman yenilendiğini ve kullanılmayan verinin sonraki döneme aktarılıp aktarılmadığını kontrol edin. Bu hesaplama kuralları veri kotası olan ürünler için geçerlidir; proxy erişiminin evrensel bir koşulu değildir.
Kaydedilen sonucun boyutu, trafik için güvenilir bir tahmin değildir. Kısa bir fiyat veya ürün adı çıkarmak, sayfanın tamamını indirmeyi gerektirebilir. Tarayıcı ayrıca görseller, betikler ve başka dosyalar isteyebilir. Tekrarlanan denemelerde veri yeniden aktarılabilir. Gerçek uygulamayı ölçmek, ağ yükünü tahmin etmeye yardımcı olur. Ürün trafik hacmine göre ücretlendiriliyorsa sağlayıcının aktarılan hangi baytları saydığını da kontrol edin.
Aktarım hızı
Veri aktarım hızı sınırı, birim zamanda ne kadar verinin geçebileceğini yönetir. Genellikle Mbps gibi saniye başına bit veya MB/s gibi saniye başına bayt cinsinden ifade edilir. Bir bayt sekiz bitten oluşur: protokol ek yükü hesaba katılmadan 80 Mbps, 10 MB/s değerine karşılık gelir. Bunlar hız birimleridir; GB cinsinden ifade edilen aylık kota farklı bir soruyu yanıtlar.
Duyurulan hızın kapsamı önemlidir. Belirli bir hız değerine sahip sunucu portu, her müşterinin veya her bağlantının bu hızı aldığı anlamına gelmez. Birden fazla aktarım aynı kotayı paylaşabilir. Gerçek hız ayrıca ağ yoluna, hedef sunucuya ve istemcinin kendi bağlantısına bağlıdır. Dolayısıyla sağlayıcının belirttiği üst sınır, her indirme için garanti edilen bir sonuç değildir.
Aktarım hızının yanında yanıt süresi de önemlidir. Baytları aktarmak için yeterli kapasite bulunsa bile sunucu, küçük bir yanıtı göndermeden önce uygulamayı bekletebilir. Büyük indirmeler sürekli veri aktarım hızına daha duyarlıdır; çok sayıda kısa istekten oluşan iş yükleri ise yanıt gecikmelerinden ve izin verilen istek hızından daha fazla etkilenebilir.
İstek kotası ve istek hızı
İstek kotası, kotaya dahil edilen işlem sayısını belirtir. İstek hızı sınırı ise bunların ne kadar kısa aralıklarla gönderilebileceğini belirler. Yüksek bir kalan bakiyeye sahip olmak, bu bakiyenin tamamının kısa bir anda topluca kullanılabileceği anlamına gelmez. Bu iki sınır, trafik hacmine göre ücretlendirilmeyen bir üründe de birbirinden bağımsız olarak bulunabilir.
Sayılan işlemin de açıkça tanımlanması gerekir. Bir tıklama, sayfa ziyareti, HTTP isteği ve tamamlanmış veri kazıma görevi farklı olaylardır. Bir sayfa ziyareti çok sayıda HTTP isteği oluşturabilir; yönetilen bir API görevi, sağlayıcının gerçekleştirdiği birden fazla denemeyi içerebilir. Bu denemelerin müşteri kotasını tüketip tüketmediği, ürünün hesaplama kurallarına bağlıdır.
İstek hızı sınırının ayrıca bir zaman aralığı ve kısa süreli ani artışlara ilişkin kuralları vardır. Dakikalık sınırı altmışa bölmek bir ortalama verir, ancak hizmetin aynı anda gönderilen bir grubu nasıl ele aldığını göstermez. İzin verilen işleri zamana yaymak, toplam hacmi değiştirmeden istek hızı sınırına uymayı sağlayabilir. Önceden tüketilmiş istek kotasını geri getirmez.
Sınırı hangi hesap, IP veya ürün paylaşır?
Bir sayı ancak onu kimlerin paylaştığını bildiğinizde anlam kazanır. Sağlayıcı sınırı bir hesaba, siparişe, tek bir proxy IP adresine, yetkilendirilmiş istemci IP adresine veya tanımlanmış başka bir gruba uygulayabilir. Örneğin bir hesabın toplam veri aktarım hızı kotası, onu kullanan programlar arasında paylaşılır. Bu programlara farklı çıkış IP adresleri vermek, her biri için ayrı bir kota oluşturmaz.
Aynı anda birkaç düzey geçerli olabilir. Hizmet her proxy IP adresi için bir üst sınır, paketin tamamı için de ikinci bir üst sınır belirleyebilir. İşi IP adresleri arasında dağıtmak ilk kısıtlamaya yardımcı olabilir, ancak paketin toplam sınırı yine geçerlidir. İstemcinin genel IP adresine bağlı bir sınır, bu adres üzerinden internete çıkan birden fazla cihaz tarafından da paylaşılabilir.
Ürünün kuralları da önemlidir. Doğrudan proxy bağlantısı, yönetilen bir veri kazıma API’si ve aynı sağlayıcının sattığı başka bir ağ, farklı kotalara ve izinlere sahip olabilir. API’nin saydığı birim, ağ bağlantısı yerine görev veya sonuç olabilir. Özellikle hesabınıza uygulanan ayarlar dahil olmak üzere kullanmayı düşündüğünüz ürünün sınırlarını okuyun.
Bir sınıra ulaşıldığında ne olur?
Hizmetin tepkisi kurala bağlıdır. Veri aktarım hızı üst sınırına ulaşıldığında veriler sınırlı bir hızla aktarılmaya devam edebilir. İstek hızı sınırında, fazla işler bekletilebilir veya reddedilebilir. Bağlantı sınırında hizmet, mevcut bağlantılar kullanılabilir durumda kalırken yeni bağlantıları reddedebilir. Trafik veya istek kotası olan ürünlerde kotanın tükenmesi, yenileme ya da ek satın alma gerektirebilir; kullanılabilir seçenekleri sağlayıcının koşulları belirler.
Bu nedenle “sınırsız” sözcüğünün neyi nitelediği belli olmalıdır: sınırsız trafik, istek veya bağlantı. Her biri tek bir parametreyi tanımlar. Sınırsız trafik sunan bir planın aktarım hızı ve bağlantı sayısı yine sınırlı olabilir. Sağlayıcı uzun süreli yoğun kullanım sonrasında kotayı değiştirmek için adil kullanım koşulları uyguluyorsa bu koşullar da planın parçasıdır. Tek başına bu sözcük, kuralların tamamını tanımlamaz.
Sağlayıcının açık bir mesajı, genel bir hatadan daha yararlıdır. HTTP 429, yanıt veren hizmetin kendi kurallarına göre istek sayısını fazla bulduğu anlamına gelir. Önce yanıtın proxy hizmetinden mi yoksa hedeften mi geldiğini belirleyin. Zaman aşımının yavaş bir hedef veya ağ sorunu dahil başka nedenleri olabilir. Kullanım istatistikleri, hata ayrıntıları ve denemenin zamanı, kota sorununu başka bir yerdeki hatadan ayırmaya yardımcı olur.
Reddedilen işleri tekrar tekrar göndermek, istek hızı sorununu ağırlaştırabilir ve ek kota tüketebilir. Yararlı bir değişiklik bilinen koşulu hedef alır: gönderim hızını düşürün, artık gerekmeyen bağlantıları kapatın, tükenen kotayı artırın veya hedef için erişim iznini doğrulayın. Genel bir paket yükseltmesi ancak söz konusu koşulu değiştiriyorsa yardımcı olur.
Sınırları görevin tamamına göre değerlendirin
Gerekli sonuç ve son teslim süresiyle başlayın. Örnek bir hesaplamada, bir işin 6,000 HTTP isteğini 30 dakika içinde, ortalama 0.5 MB yanıt boyutuyla gerçekleştirmesi gerektiğini varsayalım. Bu, ortalama dakikada 200 istek ve ondalık birimlerle yaklaşık 3 GB yanıt verisi demektir. Tahmine giden veriler, tarayıcının ek kaynakları ve tekrarlanan denemeler dahil değildir. Gerçek iş bunları oluşturuyor ve hizmet bunları sayıyorsa hesaba katılmaları gerekir.
Bu toplamlar, ihtiyacınız olan bağlantı kotasını henüz belirlemez. Uygulamanın gerçek paralel etkinliğini ve bağlantıların ne kadar süre kullanımda kaldığını test edin. Aynı sınırı paylaşan diğer programları ve işlerin birlikte başlamasıyla oluşan kısa süreli ani artışları hesaba katın. Veri hacmini, istek hızını ve eşzamanlı bağlantıları ayrı ayrı ölçün; tek bir sayaç üçünün de yerini tutamaz.
Testte, işi bitirmek için gereken uygulama işlevleri dahil olmak üzere amaçlanan ürünü ve hedefleri kullanın. Başarılı küçük bir kontrol, tek bir işlemin çalıştığını gösterir. Temsil edici bir çalıştırma ise sürekli yük, en yüksek kullanım değerleri ve görevin tamamının ihtiyaç duyduğu kaynaklar hakkında ek kanıt sağlar. Ortalamayı güvenli bir üst sınır olarak kabul etmek yerine testte gözlenen değişkenlik için biraz kapasite ayırın.
Bir gereksinim belirsizse desteğe somut bir açıklama verin: ürün, hedef sunucular, hedef portlar ve taşıma protokolü, beklenen veri hacmi, istek hızı, en yüksek bağlantı sayısı ve varsa hatanın tam metni. Bu bilgiler, sağlayıcının ilgili kotayı veya izni kontrol etmesini sağlar. İhtiyacınız olan sonuç, hizmetin belirtilen sınırlarıyla çalıştırmayı planladığınız iş yükünün örtüşmesidir.
