Bu, verim ve indirme zamanını etkileyen faktörler olarak sıkıştırma, vb. İle ilgili diğer cevaplara eklenmek içindir.
Henüz belirtilmemiş bir nokta, paket verimliliğidir. Çoğu insanın buna bile rastladığından şüpheliyim, işte kısa bir geçmiş.
Web servislerini kullanmaya başlamadan önce, bunları kullanmak ile daha "standart" bir veritabanı bağlantısı kullanmak (örneğin OleDb, System.Data.SqlClient, JDBC, vb.) Arasındaki verimlilik farkını bilmek istedik. Gurumuzu, farkı görmek için ağdaki veri akışlarını izlemek için paket koklayıcıları yerleştirdik.
Web hizmetlerini kullanmanın diğer bağlantı türlerinin ikili formatı ve verileri tanımlamak için kullanılan XML etiketlerinin ek yükü nedeniyle daha az etkili olacağını umduk.
Bulduğumuz şey, web servislerinin çoğu zaman DAHA ÇOK verimli, en azından ağımızda olduğu idi. Buradaki fark, ikili verileri aktarırken, paketlerin içindeki baytların bazılarının boş olmasıydı, ancak metin verileri gönderilirken paketlerin daha verimli kullanılmasıydı.
Bunu ilginç bulduk ve farklı dosya türlerini aktarırken denedik ve kural olarak, ağ üzerinden geçen düz metinlerin her zaman paketlerde bulunan bitlerin% 100'ünü her zaman kullandıkları bitlerin kullanılmadığını gördük. Neden bu, sana söyleyemedim, ama birkaç deney bunu yaptı.
Bu soru üzerine yapılan birkaç yorum, açık bir şekilde kusurlu bir soru olarak bunu reddetmiş gibiydi, ama aslında değil. Veri miktarı aynı kalsa da, borunun verimliliği de önemlidir.
Çünkü BT dışı bir insanın anlayacağı analojilere dayanamıyorum:
Bir bakkalın içindeki bir dondurucudaki tek bir rafta x miktar alanı vardır; ancak, yuvarlaklar kullanılarak oluşturulan boş alan nedeniyle, kaplar yuvarlak olduklarından daha kare olduğunda rafa daha fazla galon dondurma sığdırabilir konteynerler. Testlerimiz, ilk başta karşı sezgisel olmasına rağmen, herhangi bir market mağazasının bize söyleyebileceklerini anlattı.