ASP проти ASP.Net

ASP і ASP.Net є дуже різними мовами програмування. ASP це сценарій мови, де як ASP.NET - це веб-формулювання складеної мови (Visual Basic, C #, J #, C ++, .Net). Більше того, на відміну від ASP, ASP.NET - це об'єктно-орієнтована мова.

повідомити про це оголошення

Зміст: ASP проти ASP.Net

  • 1 Ізоляція процесу
  • 2 Інтерпретація проти складання
    • 2.1 Наслідки виконання
  • 3 Налагодження
  • 4 Список літератури

Ізоляція процесу

ASP запускається в просторі процесу inetinfo.exe (IIS) і тому сприйнятливий до збоїв додатків через зупинку або перезапуск IIS..

З іншого боку, робочий процес ASP.NET - це окремий процес (aspnet_wp.exe), окремий від процесу IIS inetinfo.exe. Модель процесу в ASP.NET не пов'язана з налаштуваннями ізоляції процесів у IIS.

Інтерпретація проти складання

Коли запитується традиційна сторінка ASP, текст цієї сторінки аналізується лінійно. Весь вміст, який не є стороннім сценарієм, відображається як -повернення до відповіді. Весь скрипт на стороні сервера на сторінці спочатку запускається через відповідний інтерпретатор (JScript або VBScript), вихід якого повертається у відповідь.

На відміну від цього, сторінки ASP.NET завжди компілюються у класи .NET, розміщені в межах збірок. Цей клас включає весь код на стороні сервера та статичний HTML, тож після першого доступу до сторінки (або до будь-якої сторінки в певному каталозі) подальше рендеринг цієї сторінки обслуговується виконанням компільованого коду. Це виключає всю неефективність сценарійної моделі традиційного ASP.

Наслідки виконання

  • Оскільки сценарії ASP інтерпретуються на льоту, є вплив на продуктивність. Поширена оптимізація для програм ASP полягає в тому, щоб перемістити багато сценаріїв на стороні сервера в заздалегідь складені компоненти COM для покращення часу відповіді. Оскільки всі компоненти в ASP.NET є складовими, зниження якості роботи за допомогою коду на стороні сервера не відбувається.
  • За допомогою ASP змішування блоків оцінювання на стороні сервера зі статичним HTML є менш ефективним, ніж один блок скриптів на стороні сервера, тому що інтерпретатор повинен викликатися кілька разів. Щоб уникнути цього, багато розробників ASP вдаються до великих блоків сценарію на стороні сервера, замінюючи статичні елементи HTML замість викликів Response.Write (). Для ASP.NET такі кроки не потрібні для підвищення продуктивності.
  • ASP дозволяє писати різні блоки сценаріїв на сторінці різними мовами сценаріїв. Хоча це може бути привабливим певним чином, воно також погіршує продуктивність, вимагаючи, щоб певна сторінка завантажувала обидва двигуни сценаріїв (JScript, VBScript) для обробки запиту, який вимагає більше часу та пам'яті, ніж використання лише однієї мови. ASP.NET має "кодове" у файлах .aspx, які аналізуються та компілюються. Кілька мов на стороні сервера не можна використовувати в одному файлі .aspx.

Налагодження

Оскільки ASP передбачає інтерпретацію сценаріїв, налагодження складно. Але з ASP.NET усі інструменти, доступні розробнику .NET, застосовні до розробника .aspx. Помилки зі сторінками генеруються як помилки компілятора, і є велика ймовірність, що більшість помилок буде знайдено під час компіляції замість часу виконання, оскільки VB.NET та C # - це сильно набрані мови.

Список літератури

  • Вікіпедія: Активні сторінки сервера
  • Вікіпедія: ASP.NET