Semua hal di atas kemungkinan benar. Faktor tunggal terbesar yang mempengaruhi kinerja di situs ASP.NET yang saya kerjakan adalah bahwa segala sesuatu yang berkaitan dengannya sudah tua. Versi .NET framework, server, infrastruktur database, dan kode itu sendiri mengalami penuaan yang buruk.
Saya menduga banyak situs ASP.NET cenderung situs perusahaan. Ini tidak mendapatkan banyak cinta, karena mereka cenderung hanya bekerja . Orang tidak menulis ulang sampai mereka harus melakukannya, yang seringkali sangat lama.
Saya tahu situs tempat saya bekerja dengan ASP.NET yang digunakan mendapat speedup besar hanya dengan pindah ke versi terbaru dari framework, yang memiliki JITing dan cache caching default yang jauh lebih efisien.
Hal lain yang saya lihat bahwa banyak situs ASP.NET tidak tahu bagaimana skala dengan benar. Mereka tidak memiliki pengaturan penyeimbangan muatan yang tepat karena merancang situs mereka agar berfungsi dengan benar dengan kebun web tidak umum atau terdokumentasi dengan baik di komunitas. Jika Anda tidak merancang situs untuk taman web sejak awal, Anda tidak dapat menggunakan mekanisme peningkatan skala bawaan yang dimiliki IIS. Perimbangan beban perangkat lunak dengan Windows NLB tidak terlalu umum dan rumit untuk dikelola. (Ini mengingatkan kembali pada kenyataan bahwa ASP.NET cenderung menjadi perangkat lunak perusahaan, dan cenderung dikelola oleh perusahaan yang menjalankan situs alih-alih profesional TI yang mengetahui cara mengonfigurasi hal ini dengan benar.)
Penyeimbangan beban perangkat keras dengan F5 sangat mahal, tetapi tampaknya merupakan mekanisme paling umum dan sederhana untuk meningkatkan situs ASP.NET dalam jaringan perusahaan. Saya pikir di antara kerumunan open source harapannya adalah bahwa Anda membangun penyeimbangan beban dari awal menggunakan alat open source yang tersedia secara otomatis skala berdasarkan penggunaan. Ini tidak umum di dunia ASP.NET dari apa yang saya lihat.