- •2.Опорная модель osi
- •2 Обзор программных средств
- •2.1 Аутентификация и авторизация. Система Kerberos
- •2.2 Установка и настройка протоколов сети
- •4 Классификация архитектур информационных приложений
- •2.1. Файл-серверные приложения
- •2.2. Клиент-серверные приложения
- •2.3. Intranet-приложения
- •2.4. Склады данных (DataWarehousing) и системы оперативной аналитической обработки данных
- •2.5. Интегрированные распределенные приложения
- •5 Файл-серверные приложения
- •3.1. Традиционные средства и методологии разработки файл-серверных приложений
- •3.1.1. Системы программирования и библиотеки
- •3.1.2. Средства и методы разработки приложений на основе субд на персональных компьютерах
- •3.2. Новые средства разработки файл-серверных приложений
- •3.2.1. Общая характеристика современных средств
- •3.2.2. Примеры новых подходов
- •3.2.2.1. Пакет ms Access
- •3.2.2.2. Система Visual FoxPro
- •3.2.2.3. Среда программирования ca-Visual Objects
- •3.3. Перенос файл-серверных приложений в среду клиент-сервер
- •3.3.1. Библиотеки доступа к базам данных
- •3.3.2. Протокол odbc и его реализации
- •3.3.3. Укрупнение приложений (Upsigsing)
- •3.4. Рекомендации по использованию инструментальных средств разработки файл-серверных приложений
- •6 Клиент-серверные приложения
- •7 Принципы работы архитектуры клиент-сервер
- •Частично децентрализованные (гибридные) сети
- •Пиринговая файлообменная сеть
- •Пиринговые сети распределённых вычислений
- •Пиринговые финансовые сети
- •Сети клиент/сервер
- •10 Intranet приложения
- •Intranet - корпоративная , но не публичная сеть
- •Intranet - это применение Web-технологии
- •Intranet - это архитектура клиент-сервер
- •Intranet - не панацея от всех бед
- •11 Организация адресации в интернете
- •4. Практическая часть.
- •Основы сокетов
- •Системные вызовы
- •Создание и уничтожение сокетов
- •Вызов connect
- •Отправка данных
- •Серверы
- •Локальные сокеты
- •Пример использования локальных сокетов
- •Internet-Domain сокеты
- •Пары сокетов
- •Основные конструкции языка Java
- •Библиотека классов языка Java
- •Общие сравнительные характеристики:
- •Вызов расширения isapi сервером www
- •Функция GetExtensionVersion
- •Функция HttpExtensionProc
- •Получение данных расширением isapi
- •Функция GetServerVariable
- •Функция ReadClient
- •Посылка данных расширением isapi
- •Функция WriteCilent
- •Функция ServerSupportFunction
- •Способы поиска в Интернете Три способа поиска в Интернете
- •Поисковые серверы
- •Язык запросов поисковой системы
- •Классификация вторжений
- •Физическая безопасность
- •Утилизация старых компьютеров
- •Программный доступ
- •Идентификация пользователей
- •Системные демоны и службы
- •Службы tcp/ip, которые иногда можно отключить
- •Образец политики корпоративной безопасности
Общие сравнительные характеристики:
ASP Script: |
VBScript |
JScript |
PerlScript |
Объктно-ориентированное программирование |
Нет |
Да |
Да |
2nd tier на COM |
Да |
Да |
Да |
2nd tier на CORBA |
Только через мосты |
Только через мосты |
Да |
2nd tier на EJB |
Только через мосты |
Только через мосты |
Только через мосты |
Схожие языки (для формирование корпоративного стандарта) |
MS Visual Basic, any Basic |
javascript, Java, C, C++ |
Perl, PHP |
Проект может мигрировать на другую Web-технологию |
Нет |
Да, на JSP |
Да, на PHP или Perl CGI/ISAPI |
Проект может мигрировать на другую платформу |
Нет |
Да, JSP на любой JSP-совместимой платформе |
Да, PHP/Perl на любой PHP/Perl-совместимой платформе |
Критериями выбора скрипта разработки для ASP могут стать:
возможности этого скрипта, как языка программирования
корпоративные стандарты компании
возможности простой миграции проекта на конкурирующие технологии
простота поддержки
В свете вышеописанных критериев, можно порекомендовать выбор в пользу JScript.
45 серверные расширения CGI и ISAPI
Как мы только что сказали, расширение ISAPI создается в виде библиотеки динамической компоновки DLL. Обращение к такой библиотеки выполняется в документах HTML аналогично обращению к программам CGI - из форм или ссылок, созданных, соответственно, при помощи операторов <FORM> и <A>.
Когда пользователь обращается к расширению ISAPI, соответствующая библиотека DLL загружается в адресное пространство сервера Microsoft Information Server и становится его составной частью. Так как расширение ISAPI работает в рамках процесса сервера Microsoft Information Server, а не в рамках отдельного процесса (как это происходит при запуске программы CGI), оно может пользоваться всеми ресурсами, доступными серверу. Это благоприятно сказывается на производительности.
Другой важный момент, влияющий на производительность, имеет особое значение в тех случаях, когда расширение сервера используется активно сразу многими пользователями.
Пусть, скажем, 20 пользователей обратятся одновременно к одной и той же программе CGI. В результате на сервере будет создано 20 процессов, по одному для каждого пользователя. Так как создание процесса отнимает достаточно много системных ресурсов, это приведет к потере производительности.
Если же 20 пользователей одновременно обратятся к одному и тому же расширению ISAPI, в память серверного процесса будет загружена одна копия библиотеки DLL расширения, которая будет работать в мультизадачном режиме. Очевидно, при таком подходе полностью исключаются накладные расходы системных ресурсов на запуск процессов.
Сравнивая программы CGI и расширения ISAPI, нужно заметить, что несмотря на существенное превосходство в быстродействии расширений ISAPI, программы CGI также имеют свои преимущества.
Так как расширения ISAPI работают в рамках серверного процесса, они должны отлаживаться особенно тщательно. Ошибка в расширении ISAPI может привести к аварийному завершению всего сервера Microsoft Information Server. Что же касается программы CGI, работающей как отдельный процесс в своем собственном адресном пространстве, то она едва ли способна вывести из строя сервер. Если в программе CGI будет допущена критическая ошибка, это приведет всего лишь к аварийному завершению самой программы, но не всего сервера.
Напомним, что расширение ISAPI работает в мультизадачном режиме, что приводит к дополнительным проблемам при отладке. Особенности программирования для мультизадачного режима мы описали в 26 и 27 томах “Библиотеки системного программиста”, которые называются “Программирование для Windows NT. Часть 1” и “Программирование для Windows NT. Часть 2”. Там же вы найдете информацию о том, как создавать библиотеки DLL, предназначенные для работы в среде Microsoft Windows NT и Microsoft windows 95.