Yukarıdakilerin hepsi muhtemelen doğrudur. Üzerinde çalıştığım ASP.NET sitesinde performansı etkileyen en büyük tek faktör, onunla ilgili her şeyin eski olmasıydı. .NET framework sürümü, sunucular, veritabanı altyapısı ve kodun kendisi kötü yaşlanıyordu.
Birçok ASP.NET sitesinin kurumsal site olma eğiliminde olduğundan şüpheleniyorum. Bunlar çok fazla sevmiyorlar, çünkü sadece çalışma eğilimindeler . İnsanlar gerekene kadar onları yeniden yazmazlar, bu da genellikle yolda çok uzun bir zamandır.
Kullanılan ASP.NET ile çalıştığım sitenin sadece çok daha verimli JITing ve aklı önbellekleme varsayılanlarına sahip olan çerçevenin en yeni sürümüne geçerek büyük bir hız kazandığını biliyorum.
ASP.NET sitelerinin birçoğunun nasıl düzgün ölçeklendiğini bilmediğini gördüğüm başka bir şey. Sitelerinin web bahçeleriyle doğru çalışacak şekilde tasarlanması toplulukta yaygın veya iyi belgelenmediğinden, uygun yük dengeleme ayarlarına sahip değillerdir. Sitenizi en başından itibaren web bahçeleri için tasarlamıyorsanız, IIS'nin sahip olduğu yerleşik ölçeklendirme mekanizmasını kullanamazsınız. Windows NLB ile yazılım yük dengelemesi çok yaygın değildir ve yönetimi karmaşıktır. (Bu, ASP.NET'in kurumsal yazılım olma eğiliminde olduğunu ve bu şeyleri doğru şekilde nasıl yapılandıracağını bilen BT uzmanları yerine, siteyi çalıştıran şirket tarafından yönetilme eğilimini ortadan kaldırmaktadır.)
F5'lerle donanım yükü dengeleme çok pahalıdır, ancak şirket ağlarındaki ASP.NET sitelerini ölçeklendirmek için en yaygın ve basit mekanizma gibi görünmektedir. Bence açık kaynak kalabalığı arasında, kullanıma göre otomatik olarak ölçeklenen serbestçe kullanılabilen açık kaynak araçlarını kullanarak yük dengelemeyi baştan inşa etmenizdir. ASP.NET dünyasında gördüğüm kadar yaygın değil.