Технология CGI
CGI (Common Gateway Interface - Интерфейс общего шлюза) является стандартом интерфейса (связи) внешней прикладной программы с информационным сервером типа HTTP, Web сервер. С помощью CGI можно создавать CGI-программы, называемые шлюзами, которые смогут выдать на экран пользователя динамическую информацию.
Достоинства
1) простота использования –> широкое распространение;
2) универсальность: расширения CGI мб написаны на разных языках (C/C++, Fortran, Perl, TCL, Unix Schell, Visual Basic, Apple Script) и поддерживаются всеми WEB-серверами (любой архитектуры и на любых платформах).
3) CGI – основной вид серверных расширений WEB-серверов, работающих под управлением Unix-подобных ОС.
Недостатки
1) снижается скорость взаимодействия CGI-приложения с сервером, так как CGI-приложение выполняется в собств. адресном пространстве;
2) CGI-приложение – консольное приложение, кот. получает инфу через переменное окружение;
3) при поступлении каждого запроса от клиента тратятся ресурсы на загрузку CGI-приложения.
Технология SSI
SSI (Server Side Includes - Включение на стороне сервера) - это директивы, вставляемые в HTML-код и служащие для передачи указаний серверу. SSI позволяют "вставлять" фрагменты одних документов в другие. Сервер интерпретирует SSI-директивы и выполняет соответствующие действия. Использование SSI-вставок позволяет динамически формировать странички в зависимости от различных параметров (например, типа браузера). Для того чтобы сервер знал, что страничка не обычная, а содержит SSI-директивы, используется специальное расширение: shtml или shtm. Для того чтобы указать серверу, какой блок нужно вставить и в каком месте странички, используется специальная форма записи в виде комментария.
|
Достоинства
1) если в несколько документов вставляется один и тот же фрагмент, к тому же часто изменяемый, использовать SSI-вставки много удобнее.
2) с точки зрения дизайнера элементы сложной верстки скрыты за счет использования SSI, и поддержка содержимого страничек становится гораздо более легким и приятным делом.
3) возможность мгновенной замены дизайна сайта, не требующая переделывания страничек. Для смены дизайна достаточно переписать SSI-вставки, формирующие внешний вид сайта.
SSI не является альтернативой CGI, это дополнение к CGI, предоставляющее web-программисту множество удобств.
ISAPI
Подобно CGI, спецификация ISAPI (Internet Server Application Programming Interface) определяет правила взаимодействия между Web-сервером и дополнительными программами. Это альтернатива CGI. Основное отличие ISAPI-программы от CGI-сценария состоит в том, что ISAPI-программа представляет собой не исполняемый файл, а динамическую библиотеку (DLL). Благодаря этому появилась возможность запускать программу не как отдельный процесс, а как поток, принадлежащий Web-серверу.
Достоинства
1) для выполнения потока требуется значительно меньше ресурсов, чем для работы независимого процесса;
2) поток использует адресное пространство породившего его процесса и работает намного быстрее, чем отдельный процесс;
3) в отличие от CGI-сценария, ISAPI-программа, окончив свою работу, как правило, остается резидентной в памяти и используется для обработки последующих запросов –> меньше времени на обслуживание запроса.
Недостатки
1) если за универсальность CGI-сценариев пришлось платить недостаточной производительностью, то в качестве платы за высокую производительность создатели ISAPI-программ жертвуют универсальностью. Арсенал языков, имеющихся в распоряжении разработчиков ISAPI-программ, значительно беднее, чем у их коллег, создающих CGI-сценарии.
|
2) поскольку программа данного типа выполняется как поток, порожденный сервером, она использует адресное пространство сервера –> ошибка ISAPI-программы может вывести из строя сервер.
Технология ASP
Active Server Pages (ASP) – это серверная среда для разработки и выполнения динамических интерактивных веб-приложений. Позволяет создавать динамические страницы за счет включения в HTML-код сценариев в виде тэга. ASP формирует только динамическую часть HTML-документа. При интерпретации сценария выполняется алгоритм, выдающий в качестве результата HTML-строки, кот. ASP-процессор должен скопировать в точку вызова сценария в исходном документе. В одном документе может содержаться обращение к разным ASP-серверам.
Достоинства
1) ASP-сервер интегрирован в веб-сервер и не требует отдельного процесса;
2) ASP-сервер – это сервер OLE Automation, выполняющийся на стороне сервера;
3) для создания ASP-сервера можно использовать любые программные системы, поддерживающие технологию ActiveX (кот. построена на COM)
Недостатки
1) жесткая привязка к платформе Windows;
2) на других серверах поддержка ASP отсутствует.
Язык программирования Perl
Perl - интерпретируемый язык, приспособленный для обработки произвольных текстовых файлов, извлечения из них необходимой информации и выдачи сообщений. Язык Perl широко используется для CGI-программирования. Perl был создан как инструмент для администрирования и конфигурирования системных ресурсов сети, состоящей из Unix-компьютеров.
|
Достоинства
1) эффективная обработка текстовых файлов. Perl не ставит ограничений на объем обрабатываемых данных и если хватает ресурсов, то весь файл обрабатывается как одна строка. Рекурсия может быть произвольной глубины;
2) Perl позволяет обрабатывать различные типы данных в виде скаляров, создавать объекты и вставлять в программы на С, С++ фрагменты кода;
3) Perl доступен на многих платформах с минимальными изменениями;
4) имеет расширения, кот. обеспечивают доступ к SQL-серверам непосредственно из Perl-программы. –> Perl можно использовать для WWW-доступа к базам данных;
5) Perl легко выучить: его синтаксис близок к синтаксису C; при ошибке выдается подробное сообщение, помогающее быстро локализовать проблему.
Недостаки
1) исполнение Perl-приложения создает новый процесс;
2) трудное понимание из-за больших возможностей языка.