Wszystkie powyższe są prawdopodobnie prawdą. Jednak największym czynnikiem wpływającym na wydajność w witrynie ASP.NET, nad którą pracowałem, było to, że wszystko, co było z nią związane, było stare. Wersja .NET Framework, serwery, infrastruktura bazy danych i sam kod źle się zestarzały.
Podejrzewam, że wiele stron ASP.NET to strony korporacyjne. Nie mają dużo miłości, ponieważ mają tendencję do po prostu pracy . Ludzie nie przepisują ich, dopóki nie będą musieli, co często trwa bardzo długo.
Wiem, że strona, z którą pracowałem, która używała ASP.NET, zyskała ogromne przyspieszenie właśnie dzięki przejściu na najnowszą wersję frameworka, która miała znacznie bardziej wydajne ustawienia JITing i rozsądne buforowanie.
Z drugiej strony widziałem, że wiele stron ASP.NET nie wie, jak prawidłowo skalować. Nie mają odpowiedniego ustawienia równoważenia obciążenia, ponieważ projektowanie witryny tak, aby działały poprawnie w ogrodach internetowych, nie jest powszechne ani dobrze udokumentowane w społeczności. Jeśli od samego początku nie projektujesz witryny pod ogrody internetowe, nie możesz użyć wbudowanego mechanizmu skalowania, który ma IIS. Równoważenie obciążenia oprogramowania za pomocą Windows NLB nie jest bardzo powszechne i jest skomplikowane w zarządzaniu. (To przypomina, że ASP.NET jest zwykle oprogramowaniem korporacyjnym i jest zarządzany przez firmę prowadzącą witrynę, a nie przez specjalistów IT, którzy wiedzą, jak poprawnie skonfigurować te rzeczy.)
Równoważenie obciążenia sprzętowego za pomocą F5s jest bardzo kosztowne, ale wydaje się być najczęstszym i najprostszym mechanizmem skalowania stron ASP.NET w sieciach korporacyjnych. Myślę, że wśród tłumu oprogramowania open source oczekuje się, że od samego początku będziesz budować system równoważenia obciążenia za pomocą darmowych narzędzi open source, które automatycznie skalują się w zależności od użycia. Z tego, co widziałem, nie jest to powszechne w świecie ASP.NET.