ASP ir ASP.Net

ASP ir ASP.Net yra labai skirtingos programavimo kalbos. ASP yra scenarijų kalba, kur kaip ASP.NET yra kompiliuotos kalbos (Visual Basic, C #, J #, C ++, .Net) žiniatinklio formulavimas. Be to, skirtingai nuo ASP, ASP.NET yra į objektą orientuota kalba.

pranešti apie šį skelbimą

Turinys: ASP vs ASP.Net

  • 1 Proceso izoliacija
  • 2 Interpretacija prieš rinkinį
    • 2.1 Poveikis rezultatams
  • 3 Derinimas
  • 4 literatūros sąrašas

Proceso izoliacija

ASP vykdoma „inetinfo.exe“ (IIS) proceso erdvėje ir todėl yra jautri programos gedimams dėl IIS sustabdymo ar paleidimo iš naujo..

Kita vertus, ASP.NET darbuotojo procesas yra atskiras procesas (aspnet_wp.exe), atskirtas nuo IIS proceso inetinfo.exe. Proceso modelis ASP.NET nėra susijęs su proceso atskyrimo parametrais IIS.

Interpretacija prieš rinkinį

Kai prašoma tradicinio ASP puslapio, to puslapio tekstas analizuojamas linijiškai. Visas turinys, kuris nėra serverio scenarijus, pateikiamas kaip atsakymas. Visi puslapio serverio scenarijai pirmiausia paleidžiami naudojant atitinkamą vertėją (JScript arba VBScript), kurio išvestis grąžinama į atsakymą..

ASP.NET puslapiai, priešingai, visada sudaromi į .NET klases, esančias mazguose. Į šią klasę įeina visas serverio kodas ir statinis HTML, todėl pirmą kartą patekus į puslapį (arba atėjus bet kuriam konkretaus katalogo puslapiui), vėlesnis to puslapio pateikimas yra aptarnaujamas vykdant sukompiliuotą kodą. Tai pašalina visus tradicinio ASP scenarijų modelio neveiksmingumus.

Spektaklio poveikis

  • Kadangi ASP scenarijai yra aiškinami tiesioginiu būdu, tai turi įtakos našumui. Todėl bendras ASP programų optimizavimas yra perkelti daug serverio scenarijų į iš anksto sudarytus COM komponentus, kad būtų galima pagerinti reakcijos laiką. Kadangi visi ASP.NET komponentai yra rinkiniai, naudojant serverio kodą našumas nemažėja.
  • Naudojant ASP, serverio pusės vertinimo blokų susiejimas su statiniu HTML yra ne toks efektyvus kaip vieno serverio scenarijaus blokas, nes į vertėją reikia kreiptis kelis kartus. Norėdami to išvengti, daugelis ASP kūrėjų naudojasi dideliais serverio scenarijų blokais, pakeisdami statinius HTML elementus „Response.Write“ () kvietimais. ASP.NET, tokie veiksmai nėra būtini, norint pagerinti našumą.
  • ASP leidžia skirtingus scenarijaus blokus puslapyje rašyti skirtingomis scenarijų kalbomis. Nors tai gali būti patrauklu tam tikrais būdais, jis taip pat pablogina našumą, nes reikalaujama, kad tam tikras puslapis įkeltų abu scenarijų variklius (JScript, VBScript) užklausai apdoroti, o tai užima daugiau laiko ir atminties, nei naudojant tik vieną kalbą. ASP.NET yra „kodas atsilikęs“ .aspx failuose, kurie yra analizuojami ir kaupiami. Viename .aspx faile negalima naudoti kelių serverio kalbų.

Derinimas

Kadangi ASP apima scenarijų aiškinimą, derinimo sunku. Bet naudojant ASP.NET visi .NET kūrėjui prieinami įrankiai yra taikomi .aspx kūrėjui. Klaidos puslapiuose generuojamos kaip kompiliatoriaus klaidos, ir yra didelė tikimybė, kad dauguma klaidų bus rasta kompiliavimo metu, o ne vykdymo metu, nes VB.NET ir C # yra griežtai įvestos kalbos.

Nuorodos

  • wikipedia: Aktyvūs serverio puslapiai
  • Vikipedija: ASP.NET