|
Программирование >> Руководство по созданию web приложений
интерпретируемого языка Perl. на различ- ных платформах. Однако программы CGI, приведенные в нашей написа- ны на языке программирования С++, так как книга ориентирована на применение платформы Microsoft Windows. Приложения ISAPI Если сервер Web создан на базе Microsoft Internet Information Server, вместо программ CGI Вы можете использовать приложения ISAPI, реализованные в виде библиотек динамической загрузки DLL. Приложения ISAPI условно делятся на расширения 1S.\I*1 и фильтры ISAPI. Расширения ISAPI Расширения ISAPI выполняют тс же функции, что и только что рассмотренные программы CGI. Однако есть и очень важные отличия. Самос главное из них заключается в том, что ISAPI загружает- ся в адресное сервера но не работает как отдельный процесс. Причем такая загрузка выполняется один раз, когда к расширению обращается первый пользователь. В расширение остается в оперативной памя- ти и может быть задействовано без повторной загрузки. Заметим, что сервер Microsoft Internet Information Server версии 4.0 позволяет загружать программы ISAPI в отдельное адресное пространство. Эта возможность, работу сервера, используется для отладки новых программ. Аварийное завершение программы ISAPI, загруженной в отдельное адресное пространство, как правило, не к полной остановке сервера Web. В результате расширения 1SAPI работают быстрее но сравнению с ii.niip,im-мами CGI, особенно когда сервер Web посещают много пользователей. Что же касается программ CGI, то для каждого запускать от- дельный процесс, а это отнимает немало времени. С другой стороны, приложения ISAPI приходится отлаживать намного тщательнее, программы CGI. Так как ISAPI работает в адресном пространстве сервера Web, ошибка в приложении ISAPI способна вызвать ава-завершение работы сервера Web. Ошибки в программе CGI обычно менее так как в худшем авария произойдет только в том процессе, в котором работает эта программа, а не в . сервера Web. Фильтры ISAPI Фильтры ISAPI, так же как и расширения ISAPI, реализованы в виде библиотек динамической загрузки DLL, однако они предназначены для другого. Фильтры ISAPI способны контролировать весь поток между браузером и сервером Web на уровне протокола HTTP. Благодаря этому их можно для решения таких задач, как перекодировка и данных, создание дополнительных процедур аутентификации пользователей, сбор статистической информации об использовании ресурсов сервера и т. д. Активные страницы ASP Технология ASP предполагает интенсивное использование серверных сценариев и объектов СОМ для создания активных серверов Web. При ее на сервере Microsoft Internet Information Server располагаются текстовые файлы с расширением asp, содержащие операторы языка I ГГМ L. и сценарии, составленные на языках JScript или VB Script. Средствами технологии ASP можно легко создавать интерактивные страницы Web, не используя расширения CGI или ISAPI, что позволяет в ряде случаев полностью избежать или максимально сократить программирование на С+ + или Perl. Активные страницы ASP выполняют обработку пользователями при помощи форм, при необходимости к базам дан- ных или другим активным объектам. Как : серверные сценарии в страницах ASP? Когда пользователь обращается к странице ASP, Web интерпретиру- ет расположенный в ней сценарий. При этом анализируются . ; пере- данные этой странице. Далее страница модифицируется (или создается заново), а затем отправляется обратно пользователю. Заметим, что пользователь не может каким-либо образом получить содержимое страницы ASP, так как сервер Web отправляет ему не саму страницу, а результат ее интерпретации. Таким образом, логика работы страницы скрыта от пользователей. Серверный сценарий, встроенный в страницу ASP, способен обращаться к базам данных через вызов методов интерфейса ActiveX Data Objects (ADO) -простую и понятную Если у Вас возникнет необходимость реализо- вать собственную бизнес-логику. Вы можете создать новые объекты СОМ или использовать объекты СОМ гтиртишх разработчиков. Наша книга главным образом посвящена активным страницам ASP, : мы уделим некоторое внимание и созданию активных серверов при помощи расширений CGI и ISAPI. Приложения Web В нашей книге мы постоянно . такими понятиями, как при- ложения Web , приложения для Интернета и Теперь, когда Вы узнали об активных серверах , мы раскроем эти понятия. Однако вначале как работают обычные программы. Первые программы для мэйнфреймов работали в пакетном режиме. Им были доступны все рес5фсы компьютера. Немного позже появились интерактивные системы, поддерживающие обращение к ресурсу компьютера многих i , , i при помощи неинтеллектуальных терминалов. Создате- ли таких систем учли, что программам придется работать в многозадачном и многопользовательском режиме. Если система содержала базу данных, то все интерактивные пользователи обращались к ней через терминалы с помощью специального программного обеспечения, работающего на мэйнфрейме. В рамках приложений Web на стороне работает браузер, который по своим интеллектуальным возможностям далеко опережает алфавитно-цифровые или графические терминалы. Как видно из следующих разделов, браузер способен предварительно обрабатывать данные, отправляемые на сервер, а также обрабатывать и представлять результаты, полученные от сервера, в удобном для пользователя виде. В роли основного сервера для приложений Web выступает, как можно легко догадаться, Web - разумеется, активный. Активность на стороне клиента в большинстве случаев целесообразно разделять работу между и сер- чтобы добиться производительности в условиях каналов Интернета и лимитированных ресурсов серверов Web. Так, предварительную обработку данных, отправляемых серверу, имеет смысл выполнять на стороне клиента. Это позволит щ клшлит!.. например, повторные неправильно форм. Графическое представление запроса также стоит выполнять на стороне клиента, что существенно сократит объем данных, мых по сети. А нот выборку из базы данных выполнять сервер. Для реализации активности Вы можете применять сценарии JavaScript, Java и элементы ActiveX. Однако сервер Web выполняет только часть работы. Он отвечает за ние данных от и подготовку страниц, отправляемых обратно. Что же касается к базе данных или обращений к другим активным объек- там, реализующим то для решения этих задач : обра- щается к серверам базы данных или другим серверам приложений. Обращения выполняются либо средствами ASP, либо при помощи расширений CGT или ISAPI. Мы будем приложениями Web набор страниц HTML, DHTML, COM, клиентских и серверных .1 iCMi.ii i ев управления ActiveX, клиентских и серверных сценариев, а также аплетов Java, расположенных на одном или нескольких Web и предназначенных для работы в рамках одного приложения. Нри этом активные компоненты приложений Web могут обращаться к серверам баз данных или другим прикладным серверам для тех ли иных запросов. Подмножество приложений Web, созданных с применением технологии активных серверных страниц ASP, мы будем называть ASP. Более точное определение мы приведем в третьей главе нашей книги. Несмотря на кажущееся сходство приложений Web и программ, ориентированных па мэйнфреймы и терминалы, они относятся кразным типам, каждый из которых имеет свои особенности. И если во втором случае системой управляет администратор, а линии связи между терминалами пользователей и мэйнфреймом обладают высокой надежностью и достаточной пропускной стью, то в случае приложений Web дело обстоит иначе. Разработчик Web должен быть готов к тому, что линия связи может в любой момент оборваться, а пользователь после ее восстановления по-возобновить работу с того места, на котором случился обрыв. Пропускная способность и надежность каналов пока оставляет желать лучшего, поэтому необходимо минимизировать обмен данными между клиентом и сервером. На стороне клиента оказаться любая система и любой браузер, поэтому забота о совместимости - насущная необходимость. В Интернете много желающих получить несанкционированный доступ к популярным ресурсам и воспользоваться чужих кредитных карточек, а значит, вопросы обеспечения безопасности первоочередными.
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |