автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.01, диссертация на тему:Методы и средства разработки компонентного управления Web - сайтом на основе динамической объектной модели
Автореферат диссертации по теме "Методы и средства разработки компонентного управления Web - сайтом на основе динамической объектной модели"
На правах рукописи
Быков МИХАИЛ ЮРЬЕВИЧ
Методы и средства разработки компонентного управления Web — сайтом на основе динамической объектной модели
Специальность 05.13.01 — Системный анализ, управление и обработка информации
Автореферат диссертации на соискание ученой степени кандидата технических наук
Москва 2005
Работа выполнена на кафедре «Информатика и программное обеспечение вычислительных систем» Московского государственного института электронной техники (технического университета)
Научный руководитель
доктор технических наук, профессор Гагарина Л.Г.
Официальные оппоненты:
доктор технических наук, профессор Широ Г. Э. кандидат технических наук, доцент Панасенко С П. Ведущая организация: ОАО «Ангстрем-М»
Защита диссертации состоится «¿В» Ч^К^ 2005 г. в часов на заседании диссертационного совета Д 212.134.02 Московского Государственного института электронной техники по адресу: 124498, Москва, К-498, МИЭТ.
С диссертацией можно ознакомиться в библиотеке института.
Автореферат разослан
2005 г.
Ученый секретарь диссертационного совета, кандидат технических наук, профессор
Н.В. Воробьев
Актуальность проблемы. Стремительное развитие глобальной компьютерной сети Интернет за последние годы привело к тому, что технологиям построения и управления Web - сайтами уделяется большое внимание со стороны коммерческих компаний, государственных и научных учреждений. Это обусловлено такими важными достоинствами Интернет ресурсов как простота использования, широкая доступность, эффективность представления информации, безопасность доступа к данным.
Сложность современных сайтов не позволяет рассматривать их как простой набор связанных данных. Функциональный сайт является в первую очередь Web - приложением, или приложением серверной стороны. Создание таких приложений связано со значительными трудностями, обусловленными их распределенной природой, работой в режиме запрос-ответ, ограниченными возможностями клиентской стороны. Для облегчения их создания создаются платформы приложений серверной стороны. Они реализовывают типовые задачи и предоставляют разработчикам расширенные возможности. Однако для дальнейшего развития Web - систем нужны более высокоуровневые средства разработки, выполняющие роль конструктора сайтов, самостоятельной единицы управления сайтом, и внешней оболочки Web - приложений, т.е. системы управления сайтами.
На данный момент ведутся активные исследования и разработки подобных систем отечественными и зарубежными учеными и компаниями, однако существующие разработки лишь частично удовлетворяют современным требованиям, таким как компонентная архитектура, визуальное управление, высокая производительность, масштабируемость, удаленное управление, многоязыковая поддержка.
В связи с этим, проблема создания систем и комплексов управления сайтами, использующих компонентный подход, динамическую объектную модель, предоставляющего визуальные средства управления, имеющего высокую производительность, представляется актуальной.
Дель работы. Целью диссертационной работы является разработка методов и средств управления сайтами на основе объединения компонентного подхода и шаблонов дизайна, а также полная программная реализация, отвечающая современным требованиям.
Фундаментом научного подхода к разработке методов и средств, представленных в данной работе, является современная теория построения динамических объектных систем.
Объекты и задачи работы.
1 Платформы приложений серверной стороны
Основные задачи:
исследование на основе анализа существующих платформ, определение недостатков;
2 Системы управления Web - сайтами Основные задачи:
- анализ существующих систем, классификация, определение недостатков;
- выработка требований к системе управления сайтами;
3 Архитектура системы управления сайтами Основные задачи:
разработка модели системы на основе компонентного подхода;
- адаптация архитектуры Модель - Вид - Управление для Web - приложений;
4 Производительность Web - приложений Основные задачи:
разработка алгоритма обработки запросов Web -приложением;
- разработка модели и алгоритма частичного кэширования динамических страниц, оценка эффективности модели;
- реализация систем кэширования, сравнительное тестирование производительности системы управления сайтом, сбор статистических данных;
5 Программные средства реализации системы управления сайтами
Основные задачи:
- разработка программной реализации системы управления сайтами и сопутствующих подсистем;
внедрение разработанного программного комплекса управления сайтами (ПКУС); Методы исследования. Решение задач диссертационной работы основано на фундаментальных положениях теории информации, теории массового обслуживания, теории динамических систем, теории баз данных. Экспериментальные исследования проведены на ЭВМ платформы Intel различной конфигурации, с использованием операционных систем семейств Windows и UNIX, как в сети интранет, так и в Интернет. Обработка результатов экспериментальных исследований выполнялась с использованием ЭВМ и методов математической статистики.
работы состоит в создании методов, алгоритмов и совокупности научно обоснованных решений,
обеспечивающих создание средств управления сайтами на компонентной основе. В процессе исследований и разработок получены новые научные результаты, а именно:
проведен сравнительный анализ существующих платформ Web - приложений и систем управления сайтами и осуществлена их классификация;
- разработан автоматизированный метод генерации страниц сайтов на основе компонентно - шаблонной модели;
- разработана модифицированная архитектура Модель - Вид -Управление для Web - приложений;
- разработан алгоритм частичного кэширования динамических страниц;
разработан комплекс программных средств для управления Web - сайтами на компонентной основе с визуальным Web -управлением (ПКУС Visibricks);
Практическая ценность работы. Разработанные средства программно-алгоритмической реализации комплекса управления Web -сайтом позволяют создавать Web - приложения любого уровня сложности на основе повторно используемых компонент, осуществлять управление отдельными компонентами, модулями и сайтами целиком.
Архитектура системы, созданная на основе структуры Модель -Вид - Управление для Web - приложений и компонентного подхода, может быть использована для разработки других подобных систем, поскольку не накладывает ограничений на используемые средства разработки или платформу. Созданный комплекс программных средств является независимым как от операционной системы, так и от СУБД, что значительно расширяет спектр программно-аппаратных платформ применения.
Визуальная среда управления, пакетная структура сайтов, компонентная модель сборки страниц снижают время и затраты, необходимые на разработку и поддержку программного продукта, эффективно разделяют работы разработчиков и верстальщиков, снижают требования к квалификации персонала, что приводит к значительному экономическому эффекту.
Разработанные алгоритмы обработки запросов, однопроходного анализа кода шаблонов позволяют минимизировать затраты процессорного времени на работу самой системы, довести производительность системы до уровня базовых платформ приложений серверной стороны. Модель и алгоритм частичного
кэширования динамических страниц позволили значительно снизить время генерации страниц в сравнении со стандартным подходом кэширования страниц целиком. Благодаря этим мерам была достигнута производительность системы на 38-78% выше ближайших конкурентов как на Windows, так и на Linux платформе по результатам тестирования.
Комплекс тестов проюводительности, созданный для 5 платформ приложений серверной стороны, позволил провести сравнительную оценку самих платформ, измерить производительность для определенной аппаратной конфигурации, и может использоваться для тестирования других платформ, систем управления сайтами или программно-аппаратных конфигураций.
По результатам внедрения программных решений в ПКУС Visibricks и сайтах, созданных на его основе в компании Software Expats, были решены проблемы эффективного построения и управления Web - системами, что позволило снизить затраты на разработку, внедрение и обслуживание.
подтверждается
используемым в работе математическим аппаратом, программными и аналитическими моделями, а также подтверждением теоретически обоснованных данных практически полученными результатами, что доказывает корректность предположений, подходов и методов, предложенных автором работы. Результаты диссертации использованы при создании и промышленной эксплуатации разнообразных приложений серверной стороны, Web - сайтов в компании Software Experts в рамках ПКУС Visibricks.
Личный вклад автора. Все основные результаты получены автором лично. Главными из них являются:
создание компонентно - шаблонного подхода к генерации страниц на основе динамической объектной модели, сопутствующих алгоритмов и моделей;
разработка алгоритма частичного кэширования динамических страниц;
разработка комплекса программных средств для построения Web - сайтов на компонентной основе с визуальным Web -управлением (ПКУС Visibricks);
математическая модель системы юширования с частичным кэшированием динамических страниц;
разработаны различные Web — приложения, которые были внедрены в компании Software Experts;
автор диссертации принимал активное участие в создании Web — приложений, созданных на основе разработанных программных
средств, документации, требований и методик испытаний и проведении инсталляционных и сопроводительных работ в местах эксплуатации приложений.
Реализация и внедрение результатов исследования.
Программная реализация ПКУС была внедрена в компании Software Experts при разработке продукта Visibricks и использована при разработке ряда коммерческих сайтов, что позволило повысить эффективность разработки и снизить расходы, и подтверждено соответствующим актом о внедрении.
Все полученные в работе результаты доведены до уровня инженерных методов, алгоритмов и ПО. Все работы по реализации и внедрению проводились под руководством и при непосредственном участии автора как руководителя и ответственного исполнителя.
следующие основные научные результаты:
1. алгоритм частичного кэширования динамических страниц с формализацией модели и определением вероятности попадания байта запроса в кэш;
2. метод генерации страниц сайтов на основе компонентно -шаблонной модели;
3. комплекс программных средств для управления Web - сайтами на компонентной основе с визуальным Web - управлением (ПКУС Visibricks);
4. модифицированная архитектура Модель - Вид - Управления для Web- приложений;
Основные положения и результаты диссертации докладывались и обсуждались на следующих научных конференциях:
- 8-й Всероссийской межвузовской научно-технической конференции студентов и аспирантов «Микроэлектроника и информатика - 2001» (Москва, МИЭТ, 2001).
- 9-й Всероссийской межвузовской научно-технической конференции студентов и аспирантов «Микроэлектроника и информатика - 2002» (Москва, МИЭТ, 2002).
- Ежегодная студенческая школа-семинар «Новые информационные технологии» (Судак, Крым, 2002)
- 10-й Всероссийской международной научно-технической конференции студентов и аспирантов «Микроэлектроника и информатика - 2003» (Москва, МИЭТ, 2003).
Публикации. По материалам диссертации опубликовано 6 статей и тезисы 4 выступлений.
Работа над диссертацией проводилась в плане решения задач согласно «Приоритетным направлениям развития науки, технологии и техники Российской Федерации» и в соответствии с «Перечнем критических технологий Российской Федерации».
Структура и объем работы. Диссертационная работа изложена на 181 странице машинописного текста, иллюстрирована 38 рисунками и 7 таблицами. Она состоит из введения, четырех глав, заключения, списка литературы из 107 наименований и двух приложений.
СОДЕРЖАНИЕ РАБОТЫ
Во введении обоснована актуальность, цель работы, ее научная новизна и практическая значимость; представлена структура диссертации.
Первая глава посвящена анализу аспектов разработки приложений серверной стороны, даны определения основных понятий, а также проведен анализ существующих платформ приложений серверной стороны, подходов к разработке систем управления сайтами, сформулированы требования к разрабатываемой системе. | Основные преимущества Web - приложений или приложений серверной стороны, такие как простота использования, доступность массовому пользователю, эффективность представления информации сделали их важной частью современных информационных технологий. Поскольку Web - приложения работают на основе платформы серверных приложений функциональность и архитектура таких платформ является одним из наиболее важных аспектов Web - систем. Анализ современных платформ приложений серверной стороны, проведенный в первой главе, показывает, что существующие решения не позволяют в полной мере реализовать требуемую функциональность и возникает необходимость в разработке более высокоуровневого решения - системы управления сайтами.
Задача создания системы управления сайтами актуальна и имеет достаточное количество наработок. Анализ и классификация этих решений позволяют определить перспективы развития, преимущества и недостатки каждого подхода. Существующие разработки не позволяют удовлетворить современные требования в полной мере, поэтому требуют исследования, внедрения новых подходов и моделей. Наиболее важными аспектами являются применение компонентного подхода к управлению сайтом, разработка эффективной модели взаимодействия Web -приложений, и создание визуальных инструментов управления. Создание системы, решающей данные задачи, и является целью диссертационной работы.
Для разработки подобной системы формулируются требования, вытекающие из анализа существующих систем и потребностей Web -разработки.
Во второй главе представлена концепция предлагаемого решения, даны описания компонентно - шаблонного подхода к генерации страниц, адаптации архитектуры Модель - Вид -Управление, формализованные модели обработки запросов и предлагаемой системы кэширования.
В предлагаемой концепции для описания страниц используется совмещение шаблонного подхода с компонентным. Иллюстрация такого совместного применения шаблонов и компонентного подхода приведена на рис. 1. Для вызываемых компонент также имеется возможность использования шаблонов.
----- j
С1 ax-wxiw i-i'M-У' í:
Рис. 1. Применение шаблонов при построении страницы
Для обеспечения эффективного разделения частей интерфейса, обработки, и хранения структуры в современных системах применяется архитектура Модель - Вид - Управление. В разрабатываемой системе предлагается решение, представленное на рис. 2.
Рис. 2. Реализация архитектуры Модель - Вид - Управление
В предложенной реализации-учитываются особенности Web -систем, в частности обязательное участие браузера в частях Вид и Управление.
Данная адаптация имеет следующие преимущества:
• Архитектура реализуется в полном объеме;
• Применен компонентный подход;
• Использование шаблонов представления сохранено при компонентном подходе;
• Компоненты системы отделены от шаблонов представления;
Поскольку система управления сайтами является надстройкой над
Web - приложением она предъявляет дополнительные требования к производительности сервера. Снижение этих требований является важным аспектом проектирования системы. Рассмотрим разработанную математическую модель обработки запросов системой управления сайтами для выявления возможностей повышения производительности системы.
Система обработки запросов с математической точки зрения является системой массового обслуживания (СМО). Для определения того, какая модель СМО подходит для описания обработки запросов рассмотрим физические свойства системы. Модель обработки запросов системой управления сайтами представлена на рис. 3. Она характеризуется единственным типом запросов (разделение запросов по типам осуществляется Web - сервером).
Входящий поток
Каналы обслуживания Выходящий поток Обслуженные заявки
Рис. 3. Модель обработки запросов системой управления сайгами
При рассмотрении данной модели могут быть получены соотношения, характеризующие систему сточки зрения отказоустойчивости. Вероятность отказа Рстк составляет:
Рт+п
р --
отк п
тЩ+оСдеУ П (ж • О + ««*) + У •««,)
лож
г у - вероятность ухода заявки во время ожидания,
л
т+1
Ы1
рож _
У ~'
Р°б - вероятность ухода заявки во время обслуживания,
(1)
(2)
роб _ 1-1
У ~
1=0
(3)
где т - количество каналов обслуживания, п - число мест в очереди, ¡л - интенсивность потока обслуживания, Я - интенсивность
1
входящего потока, р = — - приведенная интенсивность входящего
М
потока, Р,- - вероятность наличия / заявок в системе, т]ож и г\о6 -
потоки ухода заявок из ожидания и обслуживания, a -J™*. и
и
аоб - —— - приведенные интенсивности потоков ухода. М
Общая вероятность ухода заявки из системы вследствие окончания времени ожидания или отказа системы принять заявку равна:
р — р i рож . р°б
» отк 1 у 1 у ^
Данные выражения позволяют рассчитать параметры эффективности системы при наличии данных о системе (потоке, пропускной способности, среднем времени обслуживания).
Из всех параметров, от которых зависит эффективность системы, при разработке можно влиять только на среднее время обслуживания
Тоб . Настройка параметров сервера является индивидуальной для
Web - системы и представляет собой отдельную сложную техническую задачу.
Поскольку Тоб значительно влияет на параметры эффективности,
необходимо рассмотреть возможности его уменьшения. В случае нашей системы
Тоб = Рдин ' 7об + Рцэш ' Хоб > (5)
где тд0и6" - среднее время обработки динамического запроса;
кэш _____
то6 - среднее время извлечения страницы из системы кэширования;
Рдцн -вероятность динамической обработки запроса;
Ркэш - вероятность попадания запроса в систему кэширования;
Очевидно, что Рдии + Рюш =1, а # . Величина Х%н
зависит от сложности сайта, и, в общем случае, на нее трудно повлиять.' Таким образом, критическим параметром для повышения производительности является вероятность попадания запроса в
систему кэширования Рюш, и нашей задачей является повышение этой
вероятности.
Для повышения вероятности попадания запроса в систему кэширования предложена концепция частичного кэширования динамических страниц. Она состоит в кэшировании статических
участков страниц и вызове только некэшируемых компонент при компоновке страницы. Такой подход позволяет кэшировать всю статичную информацию в отличие от классического подхода, при котором кэшируются только полностью статические страницы. Для определения эффективности предложенной модели кэширования рассмотрим формальную математическую модель системы кэширования.
Модель описывает систему кэширования, обрабатывающую поток приходящих на сервер запросов на страницы. Пусть общее количество страниц на сайте равно N. Расположим страницы в порядке убывания
рейтинга их популярности. Пусть вероятность того, что при
приходе запроса этот запрос адресован ьй странице. Как показывают
исследования, вероятность
с помощью ограниченного
достаточно точно описывается распределения Зипфа:
(6)
(7)
В оригинальном законе Зипфа (X — Данный закон позволяет описать вероятность получения запроса на Web - страницу с учетом ее популярности. Однако мы рассмотрим более широкий класс распределений, где О <СС <1. Как показывают исследования, такая модификация позволяет более точно смоделировать распределение
При рассмотрении данной модели приходим к следующему соотношению для вероятности побайтного попадания в кэш в усовершенствованном метода (частичного кэширования):
для классического закона Зипфа, и
м
(8)
(9)
для модифицированного закона Зипфа, где М- размер памяти под кэш, 5 - средний размер страницы, (р - среднее отношение размера
статической части страницы к общему размеру страницы, а вероятность того, что страница статическая.
Находя отношение вероятности попадания в кэш усовершенствованной системе кэширования к значению стандартной получаем выражение, соответствующее классическому, так и модифицированному закону:
Ну{М) Н(М)
при
для как
(10)
График зависимости для соотношения (10) приведен на рис. 4.
Рис. 4. Отношение вероятности попадания в кэш предлагаемой системы кэширования к стандартной
Преимущество подхода зависит от особенностей сайта и его страниц, однако в любом случае результаты предложенной схемы лучше, чем стандартной, а в большинстве случаев они превышают их в несколько раз. Это позволяет существенно повысить Рющв
соотношении (5) и, таким образом, снизить время обработки запроса.
Для практической проверки полученных результатов были собраны данные и проведены вычисления для двух сайтов разных типов, находящихся в режиме рабочей эксплуатации. Собранные данные и результаты вычислений приведены в табл. 1.
сот Г.ГЦ
Общее количество страниц 34 31
Количество динамических страниц 22 29
Суммарный размер динамических страниц (байт) 77770 259931
Суммарный размер стат. частей динамических страниц 39751 140134
Значение параметра /? 0,35 0,06
Значение параметра ф 0,51 0,54
Результат соотношения (23) 1,81 7,09
Отметим, что у двух проанализированных сайтов значение параметра (р оказалось близким. Приняв ф= 0,5 можно построить наглядный график для соотношения (10) для оценки эффективности подхода применительно к статическим и динамическим сайтам (рис.
5).
Рис. 5. Эффективность кэширования для среднего значения
Как показывает график, значительное преимущество предложенного подхода сохраняется вплоть до значений равным 0,9, т.е. для практически статических сайтов с 10% динамических страниц. Такие результаты позволяют значительно повысить производительность Web - систем.
В третьей главе рассмотрены аспекты реализации компонентной системы управления сайтом, архитектура системы, даны определения базовых сущностей, описание взаимодействия компонент, подсистем переноса пакетов, расширений системы, безопасности, кэширования.
Также описаны решения, примененные при разработке визуальных средств управления страницами и блоками.
Диаграмма основных сущностей системы и их взаимосвязи приведена на рис. 6.
Рис. 6. Основные сущности системы и их взаимосвязь
Секция (Section) - структура, объединяющая набор страниц по общей функциональности, административным правам доступам, или иным соображениям.
Разметка (Layout) - шаблон страницы, описывающий визуальную конфигурацию всех функциональных и оформительских участков страницы.
Зона (Zone) - место для помещения блоков на страницу, определяется внутри разметки.
Язык (Language) - язык, или языковая кодировка, поддерживаемая системой.
Вид (View Туре) - поддерживаемый вид просмотра страницы. Используется аналогично языку и применяется для разделения шаблонов одних и тех же страниц для разных условий, например печати, текстовом браузере, различных экранных разрешениях.
Страница (Page) — представляет страницу сайта. Страница строится на основе разметки, и состоит из кода разметки и блоков, размещенных в зонах разметки. Страница является конечной сборкой всех сущностей и ее код отсылается непосредственно пользователю.
Блок (Brick) - реализация шаблона, помещенная на страницу. Блок наследуется от одного из шаблонов со специфическими параметрами. Параметры определяются базовым классом Java (см. объект привязки).
Шаблон (Stencil) - описывает шаблон генерации блоков. Шаблон не зависит от страницы, языка, или вида и может быть использован для разных блоков-наследников на различных страницах.
Привязка (Binder) - сущность, связывающая класс Java с его шаблоном. Используется для наследования шаблонами.
Папка (Folder) - контейнер для логических сущностей, не имеющих визуального представления (шаблон и привязка). Используется для структурирования объектов системы, фильтрации и повышения скорости работы.
Данная архитектура позволяет гибко управлять сайтом и его содержимым, легко компоновать страницы из блоков, специфицировать параметры блоков, необходимые для их функционирования на конкретной странице, поскольку построена на динамической объектной модели, а не на файловой структуре страниц сайта. Единое ядро управления обеспечивает унифицированную обработку запросов пользователя и применение систем кэширования.
Для обеспечения быстрого анализа текста шаблона страницы, сборки статического текста и результатов работы динамических компонент был разработан алгоритм разбора кода шаблона, представленный на рис. 7. Достоинством этого алгоритма является его однопроходность, что позволяет реализовать его в виде фильтра потока вывода, прозрачного для остальной части системы.
Схема сборки страницы, построенная на приведенной выше объектной модели, реализует архитектуру Модель - Вид - Управление, адаптированную для Web - приложений. Предлагаемая архитектура обладает такими преимуществами по сравнению с существующими системами управления сайтами как быстродействие, многоплатформенность, отсутствие необходимости в дополнительном сервере приложений, простота разработки, простота обновления компонент.
Для повышения модульности структуры сайта, в архитектуру вводятся такие дополнительные сущности как Пакет и Сайт системы.
Пакет (Package) - структура, содержащая ссылки на объекты системы для целей управления версиями, экспорта и импорта данных. Диаграмма состояний пакета в системе представлена на рис. 8.
Сайт системы (Site) - логическое понятие, используемое для разделения различных логических сайтов, работающих на одной инсталляции системы.
Рис. 7. Алгоритм анализа кода шаблона
Введение этих сущностей позволяет разделить данные по функциональной принадлежности (пакеты), и логическому разделению по принадлежности и безопасности (сайты). Перенос модулей осуществляется с помощью пакетов.
Система безопасности основана на правах доступа групп пользователей.
Группа (Group) - логическая структура для объединения пользователей по ролям или правам доступа.
Пользователь (User) - пользователь системы, определяемый именем и паролем. Пользователь может входить в группы системы.
В системе выполнена многоуровневая реализация систем кэширования. Таким образом, помимо преимуществ частичного кэширования динамических страниц, описанных выше система позволяет полностью избежать обращений к СУБД и программным компонентам при генерации статических данных.
Предлагаемая система позволяет предоставлять средства визуального управления сайтом непосредственно через Web -интерфейс. В режиме дизайна каждая зона шаблона, в которой указываются вызовы компонент, обрамляется кодом управляющих элементов (рис. 9). Для редактирования шаблонов компонент и страниц предлагается встроенный визуальный редактор кода, основанный на возможностях DHTML.
Рис. 9. Режим дизайна страницы.
В четвертой главе проведен анализ разработанного ПКУС с точки зрения переносимости на различные программно - аппаратные конфигурации и производительности.
Комплекс Visibricks успешно внедрен и находится в рабочей эксплуатации на различных операционных системах (Windows, Linux, FreeBSD), Web - серверах (Apache, IIS), Servlet контейнерах (Tomcat, Resin), Java машинах (JDK 1.3.1, 1.4). Проведенный анализ конфигураций, особенностей совместимости позволяет сделать вывод о применимости ПКУС без доработок на большинстве современных платформ.
Для тестирования производительности были отобраны наиболее популярные базовые платформы приложений серверной стороны, производительность которых считается приемлемой для рабочих Web - систем: ASP.NET, JSP, Java Servlets, PUP. Тестирование проводилось на двух различных программных платформах: Linux и Windows на базе
9 тестов, проверяющих наиболее актуальную функциональность Web -приложений и различные варианты использования. Нагрузка составила
10 одновременно подключенных пользователей. Модель, примененная к расчету производительности позволила сравнивать производительность самих платформ без влияния работы сетевого соединения, Web - сервера Итоговые результаты были получены на комплексном тесте, производящем вызовы ко всем 9 тестам. Результаты представлены на рис. 10 и в табл. 2.
Полученные результаты тестирования производительности показывают, что, благодаря эффективной архитектуре и системам
кэширования, ГЖУС Visibricks не только не показывает ухудшения производительности по сравнению с базовыми платформами, но и демонстрирует среднее время обработки запроса системой в 1,38 раза меньше ближайшего конкурента на платформе Windows (платформа ASP.NET) и в 1,78 раза меньше ближайшего конкурента на платформе Linux (платформа JSP).
Табл. 2
Платформа Static IIS JSP IIS PHP IIS Servlets IIS Visibricks IIS 1 ASP.NET Static Apache JSP Apache PHP Apache Servlets Apache Visibricks Apache
Запросов в секунду 205 52 14 50 80 65 388 64 49 61 101
Рис. 10. Комплексный тест производительности (запросов в сек.)
Результаты переносимости и производительности ПКУС позволяют использовать его в широком диапазоне задач построения Web - приложений, на различных программно - аппаратных платформах, в том числе и в системах с высокой нагрузкой.
В заключении сформулированы основные результаты работы, описана практическая ценность изложенного материала, приведены выводы по работе.
В приложениях приведены документы о внедрении результатов диссертационной работы; таблицы результатов моделирования системы кэширования; фрагменты программного обеспечения средств тестирования и реализации ПКУС.
ОСНОВНЫЕ РЕЗУЛЬТАТЫ РАБОТЫ
В ходе выполнения диссертационной работы разработаны
принципы построения и алгоритмические решения для систем
управления сайтами, при этом получены следующие научные
результаты:
1. Проведено всестороннее исследование существующих платформ Web - приложений и систем управления сайтами и создана их классификация. Обоснована необходимость создания методов и средств компонентного управления сайтами, основанных на динамической объектной модели с поддержкой визуальных средств разработки.
2. Разработан алгоритм частичного кэширования динамических страниц, формализована модель вероятности попадания каждого байта запроса в кэш. На основе данной модели доказана эффективность такого подхода, подтвержденная практическими результатами.
3. Разработан метод генерации страниц сайтов на основе компонентно - шаблонной модели, позволяющий усовершенствовать технологию создания программного обеспечения, предоставляющий средства расширения и интеграции Web - систем, обеспечения модульности, переносимости, безопасности.
4. Создана модифицированная архитектура Модель - Вид — Управление для Web - приложений. Предложенная модификация основана на динамической объектной модели и позволяет наиболее полно реализовать концепцию архитектуры без ограничений функциональности.
5. Реализована многоуровневая система кэширования, реализовано частичное кэширование динамических страниц, что позволило достигнуть высокой производительности системы.
6. Разработаны визуальные средства управления страницами, редактирования HTML блоков, административный интерфейс управления сайтом. Все средства управления имеют Web -интерфейс.
7. Достигнута переносимость ПКУС на различные программно-аппаратные конфигурации. Разработана подсистема хранения, управления версиями, и переноса частей сайта, не зависящая от конфигурации системы.
8. Эксперимент показал, что производительность разработанного ПКУС Visibricks превышает наиболее быстрые платформы серверной стороны на в 1,38 раза на платформе Windows, ив 1,78 раза на Linux платформе для разработанных тестов.
9. Осуществлено внедрение программных решений ПКУС Visibricks и сайтов на его основе в компании Software Experts, что позволило снизить затраты на разработку и обслуживание сайтов на 20%. Основные положения и содержание диссертации изложены в следующих работах:
1. Быков М.Ю. Построение системы динамического создания и управления Web - сайтом. //Тезисы докладов 8-й Всероссийской межвузовской научно-технической конференции студентов и аспирантов «Микроэлектроника и информатика - 2001». -М.:МИЭТ,2001.-с. 190.
2. Быков М.Ю. Повышение производительности динамического Web
- сайта с помощью многоуровневой системы кэширования. //Тезисы докладов 9-й Всероссийской межвузовской научно-технической конференции студентов и аспирантов «Микроэлектроника и информатика - 2002». -М.:МИЭТ, 2002. - с. 146.
3. Быков М.Ю. Использование Web - сервисов и технологии ASP .NET при разработке компонентных Web - систем в гетерогенных средах. //Тезисы докладов 10-й Всероссийской международной научно-технической конференции студентов и аспирантов «Микроэлектроника и информатика - 2003». -М.:МИЭТ, 2003. - с. 239.
4. Быков М.Ю. Организация хранения, переноса, и управления модулями Web - сайта, построенного на основе СУБД. //Тезисы докладов X юбилейной международной студенческой школы-семинара "Новые Информационные Технологии". В 2 томах. Т. 2. Судак2002. -с. 506-507.
5. Быков М.Ю. Повышение производительности динамического Web
- сайта с помощью многоуровневой системы кэширования. //Журнал "Естественные и технические науки". - 2003. - №6. - с. 65-71.
6. Быков М.Ю. Обзор современных Web технологий построения приложений серверной стороны. //Электронная научно -техническая библиотека SciTecLibrary.com, 2003. (http://www.sciteclibrary.ru/rus/catalog/pages/6643.html)
7. Быков М.Ю. Использование Web сервисов и технологии ASP.NET при разработке компонентных Web систем в гетерогенных средах. // Журнал «Перспективные информационные технологии и интеллектуальные системы». - 2003. - №4. - с. 81-89.
8. Гагарина Л.Г., Быков М.Ю. Математическая модель системы частичного кэширования динамических страниц. //Журнал «Техника и Технология». - 2005. - №2. - с. 169-174.
9. Быков М.Ю. Обзор и классификация систем управления сайтами. // Электронная научно - техническая библиотека SciTecLibrary.com, 2005. (http://sciteclibrary.ru/rus/catalog/pages/7810.htnil)
10. Быков М.Ю. Модель процесса обработки запросов системой управления Web - сайтами. //Журнал "Вычислительные методы и программирование". 2005. -с. 53-56.
Подписано в печать Заказ № Ш .
Тираж экз. Уч.-изд. л. tf&. Формат 60x84 1/16 Отпечатано в типографии МИЭТ (ТУ). 124498, Москва, МИЭТ (ТУ).
1629
Оглавление автор диссертации — кандидата технических наук Быков, Михаил Юрьевич
Введение.
Глава 1. Обзор существующих методов и средств создания приложений серверной стороны. Постановка задачи исследования.
1.1. Требования к платформам приложений серверной стороны.
1.2. Классификация платформ приложений серверной стороны.
1.2.1. Фильтры Web - сервера.
1.2.2. Обработчики запросов.
1.2.3. Модель шаблонов страниц (Модель 1).
1.3. Сравнительный анализ существующих платформ.
1.4. Системы создания и управления сайтами.
1.4.1. Интерактивные формы.
1.4.2. Системы оперативного управления сайтом.
1.4.3. Системы типа Модель - Вид - Управление (Модель 2).
1.5. Требования к системам создания и управления сайтами.
Выводы по главе 1.
Глава 2. Исследование и разработка компонентной модели управления сайтами, формализация процесса обработки запросов.
2.1. Компонентная модель управления сайтами.
2.2. Реализация архитектуры Модель - Вид - Управление.
2.3. Инструментальные средства визуализации управления сайтом.
2.4. Задачи оптимизации кода, кластеризации, кэширования.
2.5. Формализация процесса обработки запросов. Модель системы частичного кэширования динамических страниц.
2.5.1. Формализация процесса обработки запросов системой управления сайтами.
2.5.2. Математическая модель системы частичного кэширования динамических страниц. Оценка эффективности частичного кэширования.
Выводы по главе 2.
Глава 3. Аспекты практической реализации программного комплекса управления сайтами (ПКУС).
3.1. Архитектура системы управления сайтами.
3.1.1. Структура системы управления сайтами. Определение базовых сущностей.
3.1.2. Разработка динамической модели управления сайтами. Алгоритм генерации страниц. Использование и настройка компонент.
3.1.3. Взаимодействие компонент. Общий контекст исполнения.
3.1.4. Взаимодействие страниц. Вложенные формы.
3.1.5. Перенос и обновление сайтов.
3.1.6. Расширения ПКУС. Встраиваемые модули.
3.2. Аспекты безопасности. Разграничение прав доступа пользователей.
3.3. Уровень абстракции по поддержке СУБД.
3.4. Подсистемы кэширования ПКУС.
3.5. Визуальное редактирование страниц. Среда администрирования.
Выводы по главе 3.
Глава 4. Верификация полученных решений и практическая реализация ПКУС.
4.1. Портируемость решения.
4.2. Анализ производительности системы. Тестовая конфигурация.
4.2.1. Аппаратная тестовая конфигурация.
4.2.2. Операционные системы, использованные при тестировании.
4.2.3. Тестируемые платформы Web - приложений.
4.2.4. Проведенные тесты производительности.
4.3. Результаты тестирования платформ и ПКУС.
Выводы по главе 4.
Введение 2005 год, диссертация по информатике, вычислительной технике и управлению, Быков, Михаил Юрьевич
Стремительное развитие глобальной компьютерной сети Интернет за последние годы привело к тому, что технологиям построения и управления Web - сайтами уделяется большое внимание. Для того чтобы выяснить причины такого внимания необходимо рассмотреть, что сегодня представляет собой Интернет, какие возможности он предлагает, и какие задачи ставит перед разработчиками программного обеспечения.
Интернет - это глобальная компьютерная сеть, объединяющая в единое информационное пространство подсети, постоянные сервера, динамически подключаемых пользователей. Наиболее популярными и востребованными Интернет - технологиями изначально являлись и до сих пор остаются электронная почта (Е-mail), и Web - сайты [23]. Этими применениями возможности Интернет не ограничиваются. Сейчас активно развиваются такие направления, как мгновенная передача сообщений (Instant Messaging), распределенные вычисления, прямой обмен файлами между компьютерами пользователей (сети Peer-to-Peer), и другие. В данной диссертации рассматриваются технологии создания и управления Web - сайтами.
Web - сайт представляет собой набор статических или динамических страниц информации, предоставляемых по сетевому протоколу HTTP (Hyper Text Transfer
Protocol [104], [22]) и представленных обычно в формате данных HTML (Hyper Text
Markup Language [57], [103], [68]), который содержит сами данные и информацию по способу их отображения для получателя [25]. При современном быстром развитии технологий помимо HTML и HTTP сейчас уже разработаны другие протоколы и языки разметки [29], например HTTPS - протокол передачи данных, обеспечивающий шифрование, XML (Extensible Markup Language [67]) - универсальный формат передачи данных, XSLT (Extensible Stylesheet Language Transformation [74]), но
HTML, или его расширение до XML грамматики - XHTML [14], являются основой для большинства сайтов. Все основные стандарты сетевых протоколов, языков разметки разрабатываются международным консорциумом World Wide Web
Consortium (W3C) и могут быть найдены на Web - сайте консорциума. Страницы располагаются на сервере Интернет, также называемом Web - сервером. Web - сервер 4 представляет из себя один или несколько компьютеров, находящихся под управлением программы, также называемой Web - сервером, предоставляющих доступ к своим данным по сетевым протоколам и имеющим уникальный постоянный адрес в сети Интернет. Для доступа к Web - сайтам, помимо подключения к сети, Интернет пользователю необходимо специальное программное обеспечение - Web -браузер. Web - браузер является программой, позволяющей устанавливать соединение с Web - серверам посредством стандартных протоколов соединения (HTTP, HTTPS, FTP), поддерживающей язык разметки HTML, язык исполнения программ на стороне клиента JavaScript и ряд других функций, таких как поддержка конфигурационных файлов данных стороны клиента (cookies), сертификаты шифрования данных по протоколу SSL, и т.д. Web - браузер преобразует данные, полученные от Web -сервера в вид, удобный для пользователя, и на основе действий пользователя формирует и отправляет новые запросы к серверу.
Популярность Web - сайтов объясняется такими важными факторами как простота использования, доступность, эффективность представления информации, безопасность доступа. В России широкое использование Интернет началось позднее, чем в США и Европе, но сейчас уже насчитывается 12,1 миллиона пользователей Интернет (данные Интерфакс на лето 2003 года [98]), что заставляет компании задуматься о том, какие конкурентные преимущества должен иметь их сайт. Помимо привлекательного дизайна и удобства использования, которые заслуживают отдельного изучения, главную роль играет информационное наполнение сайта. Пользователи приходят на сайты в поисках информации, и, если они ее не находят, то покидают сайт. Актуальность данной проблемы подтверждается исследованиями и разработками в области пользовательского интерфейса, дизайна и наполнения сайта, современных компаний и специалистов по Web - интерфейсу, таких как Якоб Нильсен [26], [27]. Для привлечения пользователей на сайтах стараются размещать как можно больше полезной информации, но и этого недостаточно. Сейчас пользователи Интернет ищут динамическую информацию, такую как котировки акций, курсы валют, рабочие вакансии, политические новости, прогноз погоды. Именно предоставление динамического, и даже персонифицированного содержимого способно привлечь посетителей на сайт, заставить их возвращаться на него снова и снова. Таким образом, обеспечение динамического наполнения - один из ключей к успеху Web - сайта. При этом сайт становится полнофункциональным приложением, имеющим Web - интерфейс, т.е. фактически Web - приложением [19].
Существует два типа Web - приложений: приложения серверной стороны, и приложения клиентской стороны. Приложения серверной стороны - это программное обеспечение, установленное и выполняющееся на Web - сервере при получении запроса пользователя для генерации страниц с динамическим содержанием. Клиентское приложение или приложение стороны клиента - это программное обеспечение, код которого передается клиенту с Web - сервера и выполняется на машине клиента. Подходы, используемые приложениями клиентской и серверной стороны различны, и зачастую необходимо применять комбинированный подход, т.е. использовать оба вида приложений. Однако все виды технологий клиентской стороны обладают однотипными недостатками: ограничениями по безопасности (ActiveX [88]), производительности (Java Applets, JavaScript) [36], либо платформе функционирования (Macromedia Flash, ActiveX), поэтому предпочтение при создании сложных систем отдается приложениям серверной стороны.
Создание Web - приложений серверной стороны связано со значительными трудностями, обусловленными распределенной природой приложений [15], работой в режиме запрос-ответ. Для облегчения создания таких приложений создаются платформы приложений серверной стороны. Они реализовывают типовые задачи и предоставляют разработчикам расширенные возможности. Однако для дальнейшего развития Web - систем нужны более высокоуровневые средства разработки, выполняющие роль конструктора сайтов, самостоятельной единицы управления сайтом, и внешней оболочки Web - приложений, т.е. системы управления сайтами.
На данный момент ведутся активные исследования и разработки подобных систем отечественными и зарубежными учеными и компаниями, однако существующие разработки лишь частично удовлетворяют современным требованиям, таким как компонентная архитектура, визуальное управление, масштабируемость, удаленное управление многоязыковая поддержка.
Цель работы. Целью диссертационной работы является разработка методов и средств управления сайтами на основе объединения компонентного подхода и шаблонов дизайна, а также полная программная реализация, отвечающая современным требованиям к системам управления сайтами по архитектуре, производительности, переносимости, масштабируемости.
Фундаментом научного подхода к разработке методов и средств, представленных в данной работе, является современная теория построения динамических объектных систем. Объекты и задачи работы.
1 Платформы приложений серверной стороны
Основные задачи:
- исследование на основе анализа существующих платформ, определение недостатков;
2 Системы управления Web - сайтами Основные задачи:
- анализ существующих систем, классификация, определение недостатков;
- выработка требований к системе управления сайтами;
3 Архитектура системы управления сайтами Основные задачи:
- разработка модели системы на основе компонентного подхода;
- адаптация архитектуры Модель - Вид - Управление для Web - приложений;
4 Производительность Web - приложений
Основные задачи:
- разработка алгоритма обработки запросов Web - приложением;
- разработка модели и алгоритма частичного кэширования динамических страниц, оценка эффективности модели;
- реализация систем кэширования, сравнительное тестирование производительности системы управления сайтом, сбор статистических данных;
5 Программные средства реализации системы управления сайтами
Основные задачи:
- разработка программной реализации системы управления сайтами и сопутствующих подсистем;
- внедрение разработанного программного комплекса управления сайтами (ПКУС);
Методы исследования. Решение задач диссертационной работы основано на фундаментальных положениях теории информации, теории массового обслуживания, теории динамических систем, теории баз данных. Экспериментальные исследования проведены на ЭВМ платформы Intel различной конфигурации, с использованием операционных систем семейств Windows и UNIX, как в сети Интранет, так и в Интернет. Обработка результатов экспериментальных исследований выполнялась с использованием ЭВМ и методов математической статистики.
Научная новизна работы состоит в создании методов, алгоритмов и совокупности научно обоснованных решений, обеспечивающих создание средств управления сайтами на компонентной основе. В процессе исследований и разработок получены новые научные результаты, а именно:
- проведен сравнительный анализ существующих платформ Web - приложений и систем управления сайтами и осуществлена их классификация;
- разработан автоматизированный метод генерации страниц сайтов на основе компонентно - шаблонной модели;
- разработана модифицированная архитектура Модель - Вид - Управление для Web - приложений;
- разработан алгоритм частичного кэширования динамических страниц;
- разработан комплекс программных средств для построения Web - сайтов на компонентной основе с визуальным Web - управлением (ПКУС Visibricks);
Практическая ценность работы. Разработанные средства программно-алгоритмической реализации компонентной системы управления Web - сайтом позволяют создавать Web - системы любого уровня сложности на основе повторно используемых компонент, осуществлять управление отдельными компонентами, модулями и сайтами целиком.
Архитектура, созданная на основе структуры Модель - Вид - Управление для Web - приложений и компонентного подхода может быть использована для разработки других подобных систем, поскольку не накладывает ограничений на используемые средства разработки или платформу. Созданный комплекс программных средств является независимым как от операционной системы, так и от СУБД, что значительно расширяет спектр программно-аппаратных платформ применения.
Визуальная среда управления, пакетная структура сайтов, компонентная модель сборки страниц снижают время и затраты, необходимые на разработку и поддержку программного продукта, эффективно разделяют работы разработчиков и верстальщиков, снижают требования к квалификации персонала, что приводит к значительному экономическому эффекту.
Разработанные алгоритмы обработки запросов, однопроходного анализа кода шаблонов позволяют минимизировать затраты процессорного времени на работу самой системы, довести производительность системы до уровня базовых платформ приложений серверной стороны. Модель и алгоритм частичного кэширования динамических страниц позволили значительно снизить время генерации страниц в сравнении со стандартным подходом кэширования страниц целиком. Благодаря этим мерам была достигнута производительность системы на 38-78% выше ближайших конкурентов как на Windows, так и на Linux платформе по результатам тестирования.
Комплекс тестов производительности, созданный для 5 платформ приложений серверной стороны, позволил провести сравнительную оценку самих платформ, производительности для определенной аппаратной конфигурации, и может использоваться для тестирования других систем или программно-аппаратных конфигураций.
По результатам внедрения программных решений в ПКУС Visibricks и сайтах, созданных на его основе, в компании Software Experts были решены проблемы эффективного построения и управления Web - системами, что позволило снизить затраты на разработку, внедрение и обслуживание.
Реализация и внедрение результатов исследования. Программная реализация комплекса управления сайтами была внедрена в компании Software Experts при разработке продукта Visibricks, что подтверждено соответствующим актом о внедрении.
Все полученные в работе результаты доведены до уровня инженерных методов, алгоритмов и ПО. Все работы по реализации и внедрению проводились под руководством и при непосредственном участии автора как руководителя и ответственного исполнителя.
На защиту выносятся следующие основные научные результаты:
1. алгоритм частичного кэширования динамических страниц с формализацией модели и определением вероятности попадания байта запроса в кэш;
2. метод генерации страниц сайтов на основе компонентно - шаблонной модели;
3. комплекс программных средств для построения Web - сайтов на компонентной основе с визуальным Web - управлением (ПКУС Visibricks);
4. модифицированная архитектура Модель - Вид - Управления для Web-приложений;
Апробация работы. Основные положения и результаты диссертации докладывались и обсуждались на следующих научных конференциях:
- 8-й Всероссийской межвузовской научно-технической конференции студентов и аспирантов «Микроэлектроника и информатика - 2001» (Москва, МИЭТ, 2001).
- 9-й Всероссийской межвузовской научно-технической конференции студентов и аспирантов «Микроэлектроника и информатика - 2002» (Москва, МИЭТ, 2002).
- Ежегодная студенческая школа-семинар "Новые информационные технологии" (Судак, Крым, 2002)
- 10-й Всероссийской международной научно-технической конференции студентов и аспирантов «Микроэлектроника и информатика - 2003» (Москва, МИЭТ, 2003).
Публикации. По материалам диссертации опубликовано 6 статей и тезисы 4 выступлений.
Работа над диссертацией проводилась в плане решения задач согласно «Приоритетным направлениям развития науки, технологии и техники Российской Федерации» и в соответствии с «Перечнем критических технологий Российской Федерации».
Структура и объем работы. Диссертационная работа изложена на 181 странице машинописного текста, иллюстрирована 38 рисунками и 7 таблицами. Она состоит из введения, четырех глав, заключения, списка литературы из 107 наименований и двух приложений.
Заключение диссертация на тему "Методы и средства разработки компонентного управления Web - сайтом на основе динамической объектной модели"
Выводы по главе 4
В данной главе проведен анализ полученного решения, проверена работоспособность ПК УС в различных конфигурациях, проведены тесты производительности.
ПКУС Visibricks продемонстрировал свою устойчивость и работоспособность в практическом применении на разработанных сайтах. Рассмотрены различные параметры конфигурации, такие как:
• Операционная система;
• Виртуальная Java машина (JVM);
• Web сервер;
• Сервлет контейнер;
• СУБД.
В различных конфигурациях проверена работоспособность системы на операционных системах Microsoft Windows 2000 Professional, Microsoft Windows 2000 Advanced Server. Microsoft Windows XP Professional, FreeBSD 4.7, Mandrake Linux 8.2, Linux Red Hat 7.3. Проверена сборка и функционирование системы на версиях JDK компании Sun Microsystems 1.3.1 и 1.4. Проверка системы проводилась на Web серверах Apache и Microsoft IIS.
Строгое использование Servlet API позволило добиться работоспособности под популярными Servlet контейнерами Tomcat от Apache Software Foundation и Resin от Caucho Technology, Inc. Эти испытания и использование стандартов дают основание полагать, что ПКУС будет работоспособен и на других контейнерах, соответствующих спецификации Servlet API 2.2 и 2.3.
Для ПКУС созданы и проверены драйверы для работы с СУБД MySQL, MS SQL Server, Oracle. Эти СУБД являются наиболее популярными на данный момент и их поддержка обеспечивает переносимость на большинство серверов СУБД.
Тестирование производительности в сравнении с популярными базовыми технологиями позволило определить среднее преимущество Visibricks при отсутствии оптимизаций в программном коде в 100% и более по времени обработки.
Такие результаты тестирования решения позволяют сделать заключение о переносимости решения на наиболее популярные операционные системы, Web сервера и СУБД, а также об отнесении системы к классу высокодоступных. Таким образом, ПКУС может широко применяться как в гомогенных, так и в гетерогенных средах при построении распределенных систем, интегрироваться с существующими решениями, а также служить основой для построения сложных, высокопроизводительных Интернет - порталов. ПКУС может быть применен как на полностью коммерческих конфигурациях, например Windows + IIS + Resin + MS SQL, так и на некоммерческих, таких как Linux + Apache + Tomcat + MySQL. Такие широкие возможности использования, высокая производительность и стабильность системы демонстрируют все преимущества предложенного подхода без каких либо потерь для качества, производительности и функциональности.
Заключение
В работе осуществлено решение научной проблемы создания эффективных методов построения компонентного управления Web - сайтом на основе динамической объектной модели.
В ходе выполнения диссертационной работы созданы принципы построения и алгоритмические решения для ПКУС, реализованные в ПКУС Visibricks, при этом получены следующие научные и практические результаты:
1. Проведено всестороннее исследование и разработана классификация существующих платформ Web - приложений и систем управления сайтами, обоснована необходимость создания компонентной системы управления сайтами с поддержкой визуальных средств разработки.
2. Предложен совмещенный компонентно - шаблонный подход к генерации страниц, позволяющий решить задачи разделения труда в команде разработчиков, расширения и интеграции Web - систем, обеспечения модульности, переносимости, безопасности.
3. Предложена новая, усовершенствованная модификация архитектуры Модель - Вид - Управление для Web - приложений. Предложенная модификация позволяет наиболее полно реализовать концепцию архитектуры без ограничений функциональности.
4. Предложена новая модель системы кэширования, с частичным кэшированием динамических страниц, построена формальная модель вероятности попадания каждого байта запроса в кэш. На основе математической модели доказана эффективность такого подхода, подтвержденная практическими результатами.
5. Разработан метод переноса подсистем сайта, основанный на современных принципах модульности приложений.
6. Разработаны средства полного удаленного визуального управления страницами, как на уровне представления страниц, так и отдельных HTML блоков.
7. Разработана многоуровневая система кэширования, реализовано частичное кэширование динамических страниц, проведены оптимизации, позволившие достигнуть высокой производительности системы.
8. Достигнута переносимость ПКУС на различные программно-аппаратные конфигурации. Разработана подсистема хранения, управления версиями, и переноса частей сайта, независящая от конфигурации системы.
9. Разработана сквозная система безопасности, позволяющая эффективно разграничить доступ пользователя к частям сайта, страницам и частям страниц.
10. Реализованы множественные языковые и другие представления страниц и блоков, упрощающие разработку многоязычных сайтов, а также версий страниц для печати, разных типов клиентов и т.д.
11. Разработана и внедрена полная программная реализация предложенного решения, на основе решения разработаны и введены в эксплуатацию сайты.
Диссертационная работа представляет перспективы для дальнейших исследований и разработок, отдельный интерес представляет ее развитие в следующих направлениях:
1. Развитие систем кэширования с перераспределением страниц в кэше на основе динамической статистики популярности страниц.
2. Поддержка Web сервисов для интеграции с удаленными Web - системами, разработанными на других языках программирования, операционных системах и платформах.
3. Поддержка компонент созданных на других технологиях, за счет обращений через протокол HTTP, интеграции параметров вызова и фильтрации кода.
4. Создание подсистемы версий объектов ПКУС для разработки Web - систем крупного масштаба с большим количеством компонент и длительным временем разработки.
5. Поддержка распределенных вызовов компонент ПКУС.
6. Создание единых интеграционных пакетов со всем необходимым программным кодом и ресурсами.
Библиография Быков, Михаил Юрьевич, диссертация по теме Системный анализ, управление и обработка информации (по отраслям)
1. Айлебрехт JIapc. Web-сервер Apache. М.: Новое знание, 2002.
2. Арчер Т. Основы С#. Новейшие технологии. М.гИздательско-торговый дом «Русская редакция», 2001.
3. Ахаян Рубен. Macromedia ColdFusion. Наиболее полное руководство. СПб: БХВ-Петербург, 2002.
4. Бокс Д., Селлз К., Основы платформы .NET. Том 1. Общеязыковая исполняющая среда. М.:Издательский дом «Вильяме», 2003.
5. Браун Крис, Калбертсон Роберт, Кобб Гэри. Быстрое тестирование. -М.:Издательский дом «Вильяме», 2002.
6. Буч Грейди, Джекобсон Айвар, Рамбо Джеймс. UML. Руководство пользователя. -М.: ДМК, 2001.
7. Быков М.Ю. Использование Web сервисов и технологии ASP.NET при разработке компонентных Web систем в гетерогенных средах. Журнал «Перспективные информационные технологии и интеллектуальные системы», №4(16)/2003.
8. Быков М.Ю. Организация хранения, переноса, и управления модулями Web -сайта, построенного на основе СУБД. //Тезисы докладов ежегодной студенческой школы-семинара "Новые информационные технологии". Судак, Крым, 2002.
9. Ю.Быков М.Ю. Повышение производительности динамического Web сайта с помощью многоуровневой системы кэширования. Журнал "Естественные и технические науки", номер 6, декабрь, 2003.
10. Быков М.Ю. Построение системы динамического создания и управления Web -сайтом. //Тезисы докладов 8-й Всероссийской межвузовской научно-технической конференции студентов и аспирантов «Микроэлектроника и информатика 2001». -М.:МИЭТ, 2001.
11. Быков М.Ю., Гагарина Л.Г. Математическая модель системы частичного кэширования динамических страниц. Журнал «Техника и технология», номер 2, 2005.
12. Валентайн Ч., Минник К. XHTML.: М.:Издательский дом «Вильяме», 2001.
13. Ван Стен М., Таненбаум Э. Распределенные системы. Принципы и парадигмы. СПб: Питер, 2003.
14. Ван Хейк Бернард. JDBC: Java и базы данных. М.: Лори, 1999.
15. Гиббонз Пол. Платформа .NET для Java-программистов. СПб: Питер, 2003.
16. Ивницкий В.А. Теория сетей массового обслуживания. М: Физматлит, 2004.
17. Камер Дуглас Э. Компьютерные сети и Internet. Разработка приложений для Internet. М.:Издательский дом «Вильяме», 2003.
18. Клейнрок JI. Теория массового обслуживания. М.: Машиностроение, 1979.
19. Кранти Юдай, Сандху Роопендра Джит, Чакраборти Ангшуман. Microsoft .NET Framework. Разработка профессиональных проектов. СПб: БХВ-Петербург, 2003.
20. Кришнамурти Б., Рексфорд Дж. Web-протоколы. Теория и практика. HTTP/1.1, взаимодействие протоколов, кэширование, измерение трафика. М.: Бином, 2002.
21. Лионе Чарльз Дж. Разработка Web-узлов, К.: BHV Киев, 2001.
22. Маклин Скотт, Нафтел Джеймс, Уильяме Ким. Microsoft .NET Remoting. М.: Издательско-торговый дом «Русская Редакция», 2003.
23. Мальцева С. В. Информационное моделирование Web-pecypcoB Интернет. М.: Глобус, 2003.
24. Нильсен Я. Веб-дизайн: книга Якоба Нильсена. СПб: Символ-Плюс, 2002
25. Нильсен Я., Тахир М. Дизайн Web-страниц. Анализ удобства и простоты использования 50 узлов. М.: Издательский дом "Вильяме", 2002
26. Рейли Д. Создание приложений Microsoft ASP.NET М.:Издательско-торговый дом "Русская редакция", 2002
27. Филимонов Александр. Протоколы Интернета. СПб: БХВ-Петербург, 2003.
28. Холл М. Сервлеты и JavaServer Pages. СПб: Питер, 2001.
29. Быков М.Ю. Обзор современных Web технологий построения приложений серверной стороны. Электронная научно техническая библиотека SciTecLibrary.com, 2003. (http://www.sciteclibrary.ru/rus/catalog/pages/6643.html)
30. Грин. Г. Введение в ASP. (http://emanual.ru/download2/5040.html)
31. ЗЗ.Заостровцев Н.В. Создание совместимых Web-сервисов с использованием
32. VS.NET (Microsoft, Интернет ресурс GotDotNet.RU)
33. Кусаков И. Разработка сложных Web-приложений на примере Microsoft Active Server Pages, (http://www.proglib.ru/articles/art0000045.asp)
34. Брукс К., Басби С., Джезирски Э., Макмен А. Руководство по архитектуре доступа к данным на платформе .NET (http://www.microsoft.com/rus/msdn/activ/article/dotnetdataaccessarchitecture/)
35. Дхаван П. Сравнение производительности: проектные решения по безопасности (Microsoft, Интернет ресурс GotDotNet.RU)
36. Старостин Д. Новый "универсальный клей" Web Services. Microsoft. (Microsoft, Интернет - ресурс GotDotNet.RU)
37. Старостин Д. ASP.NET повторное использование кода для построения пользовательского интерфейса. Microsoft Corporation. (Microsoft, Интернет -ресурс GotDotNet.RU)
38. Филев А. Сравнивая .NET и Java. (http://www.dotsite.spb.ru/Publications/PublicationDetails.aspx?ID=71&dno=1398)
39. Хейфец И. Архитектура .NET (обзор). (Microsoft, Интернет ресурс GotDotNet.RU)
40. Шатохина Н.А. Разработка серверных элементов управления ASP.NET (Microsoft, Интернет ресурс GotDotNet.RU)
41. Aden David, Forta Ben, Kerr Roger, Kim Larry, Lei Andre, Smith Edwin, Stirling Scott M. Java Server Pages Application Development. SAMS, 2000.
42. Allen Arnold O. Probability, Statistics, and Queuing Theory With Computer Science Applications. Academic Press; 2 edition, 1990.
43. Bakore A., Bhattacharjee D., Bhattacharya S., Chopra V., Fowler C., Galbraith В., Irani R., Li S., Wiggers C. Professional Apache Tomcat. Wrox, 2002.
44. Barish G., Obraczka K. World Wide Web Caching: Trends and Techniques. USC Information Sciences Institute
45. Bergsten Hans. JavaServer Pages. O'Reilly, 2000.
46. Birznieks Gunther, Guelich Scott, Gundavaram Shishir. CGI Programming with Perl. O'Reilly; 2 edition, 2000.
47. Blum Adam. ActiveX Web Programming: ISAPI, Controls, and Scripting. John Wiley & Sons, 1996.
48. Bowen Rich, Coar Ken. Apache Cookbook. O'Reilly, 2003.
49. Breslau L., Cao P., Fan L., Phillips G., Shenker S. Web Caching and Zipf-like Distributions: Evidence and Implications. IEEE INFOCOM, 1999
50. Brooks-Bilson Rob. Programming ColdFusion MX, 2nd Edition. O'Reilly; 2 edition 2003.
51. Buchholz S., Schill A. Web Caching in a Pervasive Computing World. Department of Computer Science, Dresden University of Technology D-01062 Dresden, Germany
52. Bulger Brad, Greenspan Jay. MySQL/PHP Database Applications. Wiley, 2003.
53. Buraglia Angela C., Chalnick Leon, Forta Ben, Weiss Nate. ColdFusion MX Web Application Construction Kit, Fifth Edition. Macromedia Press; 5 edition, 2002.
54. Cheng K., Kambayashi Y. A Semantic Model for Hypertext Data Caching. Department of Social Informatics. Graduate School of Informatics, Kyoto University, Kyoto, Japan, 2002.
55. Cheng К., Kambayashi Y. Multicache-based Content Management for Web Caching. In Proc. 1st International Conference on Web Information Systems Engineering(WSIE'OO), Hong Kong, June 2000
56. Conway S., Damschen G., Greer C., Jarolim C., Maharry D., Oliver S., Palmer S., Stephens J., Ullman C. HTML 4.01 Programmer's Reference. Wrox Press, 2001.
57. Duffey K., Huss R., Goyal V., Husted Т., Kunnumpurath M., Lavandowska L., Panduranga S.N., Perrumal K., Walnes J. Professional JSP Site Design. Wrox Press, 2001.
58. Erl Thomas. Service-Oriented Architecture : A Field Guide to Integrating XML and Web Services. Prentice Hall PTR, 2004.
59. Fernandez M, Florescu D., Kang J., Levy A., Siciu D. STRUDEL: A Web Site Management System. AT&T Labs
60. Flanagan David. JavaScript: The Definitive Guide. O'Reilly; 4th edition, 2001.
61. Foemmel M., Fowler M., Hieatt E., Mee R., Rice D., Stafford R. Patterns of Enterprise Application Architecture. Addison Wesley, 2002.
62. Gamma Erich, Helm Richard, Johnson Ralph, Vlissides John. Design Patterns. Addison-Wesley Professional, 1995.
63. Goodrich Michael Т., Tamassia Roberto. Data Structures and Algorithms in Java. Wiley; 3 edition, 2003.
64. Gross Donald, Harris Carl M. Fundamentals of Queueing Theory. Wiley-Interscience, 1998.
65. Harold Elliotte Rusty, Means W. Scott. XML in a Nutshell, Third Edition. O'Reilly, 2004.
66. Holzschlag Molly E. Special Edition Using HTML 4 (6th Edition). Que, 1999.
67. Hunter Jason. Java Servlet Programming, 2nd Edition. O'Reilly & Associates, 2001.
68. Johnson M., Singh I., Stearns B. Designing Enterprise Applications with the J2EE Platform, Second Edition. Sun Microsystems, 2002.
69. Kaiser M., Liu J., Tsui K., Adaptive Distributed Caching with Minimal Memory Usage. Department of Computer Science, Hong Kong Baptist University, Kowloon Tong, Kowloon, Hong Kong, 2002.
70. Laurie Ben, Laurie Peter. Apache: the Definitive Guide. O'Reilly; 2 edition, 1999.
71. Malks D. Professional JSP. Wrox Press Ltd, 2000
72. Mangano Sal. XSLT Cookbook. O'Reilly, 2002.
73. Meltzer Kevin, Michalski Brent. Writing CGI Applications with Perl. Addison-Wesley Professional, 2001.
74. Mendelzon A., Milo T. Formal Models of Web Queries. Information Systems, Vol. 23, No.8, pp. 615-637, 1998
75. Mikhailov M., Wills C. Examining the Cacheability of User-Requested Web Resources. In Proceedings of the 4th International Web Caching Workshop, San Diego, С A March/April 1999
76. Morville Peter, Rosenfeld Louis. Information Architecture for the World Wide Web: Designing Large-Scale Web Sites. O'Reilly; 2 edition, 2002.
77. Nelson Randolph. Probability, Stochastic Processes, and Queuing Theory: The Mathematics of Computer Performance Modelling. Springer-Verlag, 1995.
78. Newcomer Eric. Understanding Web Services: XML, WSDL, SOAP, and UDDI. Addison-Wesley Professional, 2002.
79. O'Brien Gerry. Microsoft IIS 5 Administration. SAMS, 2000.
80. Perry Bruce W. Java Servlet & JSP Cookbook. O'Reilly, 2003.
81. Schlossnagle George. Advanced PHP Programming. SAMS, 2004.
82. Sklar David, Trachtenberg Adam. PHP Cookbook. O'Reilly, 2002.
83. Sullivan Dan. Proven Portals: Best Practices for Planning, Designing, and Developing Enterprise Portals. Addison-Wesley Professional, 2003.
84. Thomson Laura, Welling Luke. PHP and MySQL Web Development (3rd Edition). SAMS, 2004.
85. Wang J. A Survey of Web Caching Schemes for the Internet. Cornell Network Research Group (C/NRG). Department of Computer Science, Cornell University.
86. Williams Al. Developing ActiveX Web Controls: The Hands-On Guide to Creating Powerful Controls on the Web. Coriolis Group Books, 1996.
87. Wutka Mark. Special Edition Using Java Server Pages and Servlets. Pearson Education, 2000.
88. Bergsten H. An Introduction to Java Servlets. (http://www.webdevelopersjournal.com/articles/introtoservlets.html)
89. Curry В., Kaldestad H., Reilly G. The Art and Science of Web Server Tuning with Internet Information Services 5.0. Microsoft Corporation. (http://www.microsoft.com/TechNet/prodtechnol/iis/iis5/maintain/optimize/iis5tune.asp)
90. Davis M. Struts, an open-source MVC implementation. (http://www-106.ibm.com/developerworks/ibm/library/j-struts/)
91. Graham J. Maximizing Web Server Availability. Dell, Inc. 2002. (http://wwwl.us.dell.com/content/topics/global.aspx/power/en/pslq02graham)
92. Holloway T. Struts: a Solid Web-App Framework. (http://www.fawcette.com/javapro/200204/magazine/features/tholloway/defaultpf.asp)
93. Monday P. Evolution or revolution, JSP pages become pivotal players in Web services. (http://www-106.ibm.com/developerworks/java/Iibrary/j-j ljsp.html?dwzone=java)
94. Moore M. Tuning Internet Information Server Performance. Microsoft Corporation, 2003. (http://www.microsofit.com/serviceproviders/whitepapers/tuningiis.asp)
95. Powell M. XML Web Service Caching Strategies. Microsoft Corporation. (http://msdn.microsoft.com/library/en-us/dnservice/html/service04172002.asp)
96. Летом Интернетом пользовалось 12,1 млн. россиян. Интерфакс, 2003. (http://www.interfax.ru/r/B/0/0.html?idissue=5659531)
97. Руководство по РНР. (http://www.php.net/manual/ru/).
98. Руководство разработчика Velocity. (http://jakarta.apache.org/velocity/developer-guide.html)
99. Спецификация платформ Java Servlet 2.3 и Java Server Pages 1.2. (http://www.jcp.org/aboutJava/communityprocess/final/jsr053/)
100. Спецификация платформы J2SE 1.4.2 (http://java.sun.eom/j2se/l.4.2/docs/index.html)
101. Спецификация стандарта HTML 4.01. (http://www.w3 .org/TR/html4/)
102. Спецификация стандарта HTTP 1.1, RFC 2616 (ftp://ftp.isi.edu/in-notes/rfc2616.txt).
103. Спецификация технологии Turbine. (http://jakarta.apache.org/turbine/fsd.html)
104. Model-View-Controller. Microsoft Patterns & Practices. (http://msdn.microsoft.com/library/en-us/dnpatterns/html/DesMVC.asp)
105. Sizing the Internet: A Cyveillance Study. Cyveillance, 2000. (http://www.cyveillance.com/web/downloads/SizingtheInternet.pdf)
-
Похожие работы
- Исследование и разработка методов построения и кэширования веб-приложений
- Комплекс программных средств разработки и поддержки информационного портала корпоративной системы
- Исследование компонентной модели объектов для создания программного обеспечения и оценка производительности Web-сайтов
- Моделирование процессов динамического связывания Web-сервисов
- Методы построения инвариантных серверов web-приложений
-
- Системный анализ, управление и обработка информации (по отраслям)
- Теория систем, теория автоматического регулирования и управления, системный анализ
- Элементы и устройства вычислительной техники и систем управления
- Автоматизация и управление технологическими процессами и производствами (по отраслям)
- Автоматизация технологических процессов и производств (в том числе по отраслям)
- Управление в биологических и медицинских системах (включая применения вычислительной техники)
- Управление в социальных и экономических системах
- Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
- Системы автоматизации проектирования (по отраслям)
- Телекоммуникационные системы и компьютерные сети
- Системы обработки информации и управления
- Вычислительные машины и системы
- Применение вычислительной техники, математического моделирования и математических методов в научных исследованиях (по отраслям наук)
- Теоретические основы информатики
- Математическое моделирование, численные методы и комплексы программ
- Методы и системы защиты информации, информационная безопасность