Все вищезазначене, ймовірно, відповідає дійсності. Найбільшим фактором, що впливає на ефективність роботи сайту ASP.NET, над яким я працював, було те, що все, що стосується цього, було старим. Версія .NET Framework, сервери, інфраструктура баз даних і сам код погано старіли.
Я підозрюю, що багато сайтів ASP.NET, як правило, є корпоративними сайтами. Вони не отримують великої любові, оскільки прагнуть просто працювати . Люди не переписують їх до тих пір, поки не потрібно, що часто дуже довгий час йде вниз.
Я знаю, що сайт, на якому я працював з тим, хто використовував ASP.NET, отримав величезну швидкість, просто перейшовши на новітню версію фреймворку, яка мала набагато ефективніші JITing та розумні кешування за замовчуванням.
Інша річ, що я бачив, що багато сайтів ASP.NET не знають, як правильно масштабувати. У них не встановлено належного балансування навантаження, тому що проектування свого сайту для коректної роботи з веб-садами не є загальним явищем або є добре задокументованим у громаді. Якщо ви не проектуєте веб-сайт для веб-садів з самого початку, ви не можете використовувати вбудований механізм масштабування, який має IIS. Збалансування завантаження програмного забезпечення за допомогою Windows NLB не дуже поширене і його складне управління. (Це суттєво повертається до того, що ASP.NET має тенденцію бути корпоративним програмним забезпеченням і, як правило, керує компанією, яка керує сайтом, а не ІТ-фахівцями, які знають, як правильно налаштувати цей матеріал.)
Збалансування завантаження обладнання за допомогою F5s дуже дороге, але, здається, це найпоширеніший і простий механізм масштабування сайтів ASP.NET в корпоративних мережах. Я думаю, що серед натовпу з відкритим кодом очікується, що ви спочатку будуєте балансування навантаження, використовуючи вільно доступні інструменти з відкритим кодом, які автоматично масштабуються на основі використання. Це не часто зустрічається у світі ASP.NET з того, що я бачив.