PHP против ASP - делайте ставки, господа!


Прислал: Green Kakadu [ 28.04.2001 @ 03:00 ]
Раздел:: [ Статьи по PHP ]


PHP против ASP - делайте ставки, господа!

"ASP - это функциональная, удобная технология, но я выбираю PHP.." - примерно так начинается небольшая статья-размышление на тему "кто самее", найденная мной на сайте SimplyWebDesign.com ( http://webscript.ru///www.simplywebdesign ) (статья: Why PHP is Better than ASP ( http://webscript.ru///www.simplywebdesign.com/article.php?sid=9 )). Я подумал, что возможно кому-то из наших посетителей тоже захочется пофилософствовать на эту тему, и потому предлагаю вам перевод этой статьи. Свое мнение, я выскажу в конце. Не стоит относиться ко всему нижеизложенному очень серьезно, кипятиться по пустякам, обзывать меня зеленым недоношенным ламером - я всего лишь переводчик (aka Promt ;)) ..

ASP? PHP?

Active Server Pages (ASP) - это технология Microsoft, позволяющая создавать динамические web страницы. ASP поддерживает несколько языков программирования, наиболее распространенным является VBScript (опять же разработка Microsoft). Соответственно, ASP - это технология для Windows систем. (Подробнее об ASP: Что за зверь, этот ASP? ( http://webscript.ru///gnezdo.webscript.ru/design/article/00000005.htm ) )

PHP - аналог ASP, который может работать как в среде UNIX так и в Windows. PHP - это система разработки скриптов, включающая в себя CGI - интерфейс, интерпретатор языка и набор функций для доступа к базам данных и различным объектам WWW. (Подробнее о PHP: PHP - система разработки скриптов ( http://webscript.ru///www.webscript.ru/stories.php3?story=13 ) )

Так кто же из этих двоих лучше? По мнению автора статьи, PHP выигрывает у ASP как в плане технических (функциональных) возможностей, так и по критерию популярности/общедоступности.

Скорость.

ASP никогда не станет резвее PHP! ASP технология основана на модели COM (COM - Component Object Model), т.е. работать вы будете с объектами и компонентами.
Например, для вывода информации по запросу клиента задействуется объект Response, при обращении к базе данных, задействуется еще один объект, для работы с файлами вызывается третий объект и т.д. Таким образом, подобное нагромождение замедляет работу ASP приложения. При использовании модулей PHP, мы работаем в едином пространстве памяти PHP, и это несколько быстрее, чем использование разрозненных объектов, задействованных в различных процессах.

Испытание Бэ Дэ

Проверка скорости работы с MS SQL 7.0.
PHP: используя интерфейс ODBC ( Open Database Connectivity) доступ к базе данных - 9.54 сек.
ASP: Используя COM интерфейс для работы с ODBC - 17.28 сек (т.е. на 80% дольше).
OLEDB - микрософтская COM разработка для взаимодействия с базами данных, она "быстрее" ODBC, но если мы задействуем интерфейс PHP MYSQL, то выигрыш (на 200%) опять за PHP.

Это только говорит о том, что открытость кода PHP, а значит свободный доступ всех желающих к разработке и тестированию движка PHP - все это позволило создать более совершенную технологию, нежели ту, которая разрабатывалась в недрах Microsoft.

А как вы используете память?

Если вы работаете под IIS4, и ASP вставка header.asp инклудится в 20 web страниц, то 20 копий этих самых header.asp будут содержаться в памяти. Подобного беспредела уже нет в IIS5, который имеет улучшенную модель управления памятью, но такие радости жизни IIS5 доступны лишь для пользователей Windows 2000.

В отличии от этого, PHP грузит и инклудит только те файлы, которые непосредственно требуются.

Деньги давай!

Что? Вам необходимы возможности шифрования? Покупайте ASPEncrypt!
Хотите работать с E-Mail? Купите ServerObject's Qmail!
Хотите загрузку файлов? Предлагаем купить Software Artisans SA-FileUp!
Вот так обстоят дела с ASP.. А PHP? Халява, сэр! (Green Kakadu: стоит отметить, что как для ASP, так и для PHP существует множество платных и бесплатных разработок, в случае ASP - это разработки не только Microsofta, но и сторонних фирм. Советую заглянуть на HotScripts.com ( http://webscript.ru///hotscripts.com ))

И что?

А то, что PHP может работать как на Windows сервере, так и на UNIX'ном, а вот ASP только на Windows. Причем, как вы догадались, желательно чтоб это был IIS5, который позволяет нормально работать с памятью. А цены? Из-за того, что Microsoft'кий софт денег стоит, то и Windows хостинг стоит несколько дороже, чем UNIX'ный! Ваше мнение?
//www.simplywebdesign ( http://webscript.ru///www.simplywebdesign.com/article.php?sid=9 )
Автор: maeve
Перевод: Green Kakadu( mailto:gnezdo@webscript.ru ) ( Гнездо ( http://webscript.ru///gnezdo.webscript.ru ))

Вот. Готово. Теперь мое мнение.. Я думаю, что статья несколько однобока - если бы все было так плохо, то ASP послали бы подальше, и использовали бы PHP, но тем не менее технология ASP популярна и развивается, потому не стоит говорить о ней как о динозавре. Ну а к тому же не стоит забывать о новом сюрпризе от Microsoft - ASP.NET К сожалению, я не знаю ни одного (PHP), ни другого (ASP)- потому судить о чем-либо не имею права. Но весьма интересно ваше мнение на этот счет.. Так что пишите комментарии! За кривости перевода прошу прощения - как мог! Если заметите технические несуразности перевода - смело говорите, я вполне мог ляпнуть что-то не то..

Интересная вещь!

Если вы внимательно посмотрите на эту статью, и те, что я привел в "ссылках по теме", то наверняка обратите внимание на замкнутый круг, который у нас получился: "PHP лучше ASP" -- "Переходим с PHP на Perl.." ( http://webscript.ru///www.webscript.ru/stories.php3?story=01/02/06/9093672 ) -- "ASP-скрипт быстрее Perl CGI.." ( http://webscript.ru///gnezdo.webscript.ru/design/article/00000005.htm )..

Ссылки по теме:

Переходим с PHP на Perl, как это ни печально... ( http://webscript.ru///www.webscript.ru/stories.php3?story=01/02/06/9093672 ) Многие в это не верят (я сам не верил), но Perl действительно лучше, чем PHP.

Что за зверь, этот ASP? ( http://webscript.ru///gnezdo.webscript.ru/design/article/00000005.htm ) Механизм действия ASP (Active Server Pages) в чем-то схож с CGI - сам сценарий выполняется на сервере, а не на клиентской машине, клиент же получает уже готовую сгенерированную HTML-страницу. Основное же отличие этих двух интерфейсов состоит в том, что CGI выполняется сервером при помощи интерпретатора соответствующего языка, на котором написан скрипт (ведь CGI скрипты пишутся не только на Perl). Тогда как ASP-скрипт выполняется в одном адресном пространстве с интернет-сервером. То есть при этом не задействуются внешние интерпретаторы, а используются динамические библиотеки, в результате чего скрипт выполняется в несколько раз быстрей...

PHP - система разработки скриптов ( http://webscript.ru///www.webscript.ru/stories.php3?story=13 ) Прежде всего, ответим на вопрос: что же такое PHP? PHP - это система разработки скриптов, включающая в себя CGI - интерфейс, интерпретатор языка и набор функций для доступа к базам данных и различным объектам WWW. По личному мнению автора этой статьи, на данный момент PHP является наиболее удобным и мощным средством разработки приложений WWW и интерфесов к БД в Интернет.

Каталог Гнездо: ASP ( http://webscript.ru///gnezdo.webscript.ru/links/asp/ ) Подборка ссылок ASP ресурсов Сети: статьи, сайты для разработчиков, бесплатные скрипты и компоненты..

Каталог Гнездо: PHP ( http://webscript.ru///gnezdo.webscript.ru/links/f_php/ ) Ссылки по PHP: статьи, каталоги скриптов, документация, сайты для разработчиков..