- •Вводный раздел
- •1. Информационные системы. Основные понятия
- •Моделирование информационных систем
- •2. Архитектуры распределенного приложения с базой данных. Функции клиента и сервера при различных вариантах расслоения. Типовые клиенты доступа к бд на основе различных технологий.
- •Модель Клиент – Сервер
- •Трехуровневая модель
- •Распределенная (многоуровневая) модель
- •4 Технологии программ расширений
- •1.1 Сервисы сети Internet. Сетевая архитектура osi.
- •Тема 1. Средства взаимодействия клиента и сервера бд
- •1.2 Протоколы прикладного уровня в стеке tcp/ip. Унифицированный локатор ресурса при работе с бд
- •1.3 Блоки данных в стеке протоколов
- •Тема 2. Удаленные базы данных
- •2.1 Понятие удаленных баз данных
- •2.2 Инструментальные средства проектирования структуры бд. Утилиты автоматизированного проектирования бд.
- •2.3 Характеристика субд удаленного доступа
- •Тема 3. Разработка и эксплуатация серверной части
- •3.1 Проектирование структуры базы данных (на самостоятельное изучение) Вопросы для самостоятельной работы
- •3.2 Создание баз данных, таблиц и индексов
- •Удаление баз данных, таблиц
- •Изменение структуры таблиц
- •3.3 Типы данных в MySql
- •Integer и его вариации
- •3.4 Методы заполнения полей базы данных Использование insert
- •Использование replace
- •Использование delete
- •Использование truncate
- •Использование update
- •Загрузка данных с помощью load data infile
- •Тема 4. Разработка и эксплуатация клиентской части.
- •4.1 Простые запросы
- •4.2 Выбор строк с помощью where
- •Удаление повторений с помощью distinct
- •Выбор групп с помощью having
- •Сортировка результатов поиска с помощью order by
- •Ограничение результатов поиска с помощью limit
- •4.4 Сложные запросы Объединение двух таблиц
- •Объединение нескольких таблиц
- •Самообъединение таблиц
- •Типы объединений
- •4.5 Создание подзапросов
- •4.6 Встроенные функции MySql
- •Операторы
- •Типы таблиц MySql
- •Тема 5. Язык html как средство внешнего представления данных.
- •5.1 Основные правила проектирования пользовательского интерфейса
- •5.2. Построение абзацев в гипертекстовом документе
- •5.3 Построение заголовков в гипертекстовом документе
- •Тема 6. Разработка бизнес-слоя и интерактивных компонентов
- •6.1 Perl как средство разработки программ –приложения
- •6.2 Типы данных в Рerl
- •Переменные
- •Скалярные переменные
- •Массивы
- •Ассоциативные массивы
- •6.3 Конструкции языка Рerl Простые и составные операторы
- •Условные операторы
- •Оператор unless
- •Оператор do
- •Циклы и ветвления
- •Цикл until
- •Циклы for и foreach
- •Оператор безусловного перехода goto
- •Генерация динамических выражений с помощью функции eval
- •6.4 Подпрограммы
- •Использование пакетов для изоляции подпрограмм
- •6.5 Операторы языка Perl .Операторы сравнения
- •Логические операторы
- •6.6 Работа с файлами и строками
- •Функция chop
- •Функция index
- •Функция length
- •Функция substr
- •Функция join
- •Функция split
- •Функции для обработки списков
- •Функция reverse
- •Функция sort
- •Функции работы с массивами
- •Функции push и pop
- •Функция shift
- •Функция unshift
- •Функция splice
- •Функция scalar
- •Функция grep
- •Функции обработки ассоциативных массивов
- •Функция keys
- •Функция values
- •Функция each
- •Функция delete
- •Пример скриптов для выполнения практического задания
- •1. Добавление информации в базу (на примере винного погреба -добавление страны)
- •Часть 1
- •Удаление информации из базы (удаление страны)
- •Часть 2
- •Часть 3
- •Поиск информации в базе данных
- •Занесение новой информации во все таблицы базы данных
- •Часть 1
- •Часть 2
2. Архитектуры распределенного приложения с базой данных. Функции клиента и сервера при различных вариантах расслоения. Типовые клиенты доступа к бд на основе различных технологий.
Интенсивный рост сетей Internet свидетельствует о большом спросе на WEB-разработки. Разнообразие форм и методов построения WEB проектов достигается большим количеством методов и способов или технологий, позволяющих реализовывать творческие работы и все более усложняемые, по объему решаемых задач замыслов разработчиков Web-проектов. Все эти проекты реализуются на базе огромного числа технологий. Вот небольшой список этих технологий: HTML, DHTML, XML, JavaScript, VBScript, CGI, ISAPI, ASP, ActiveX Data Objects-ADO, элементы управления ACTIVX, ActiveX Template Library, аплеты JAVA, PHP, PERL, приемы работы с базами данных, различные серверы баз данных.
С точки зрения конструирования архитектуры WEB-проекта стоит особое внимание уделить архитектуре клиент-сервер. То есть, по мере развития Internet технологий стали очевидны преимущества таких разработок - их простота, наглядность, полнота функциональности, техническое и программное совершенство для реализации поставленных задач. История развития такой архитектуры предлагает рассмотреть нам классическую двухуровневую модель, модифицированную трехуровневую модель и многоуровневую (распределенную) модель.
Модель Клиент – Сервер
Предполагает двухуровневое сетевое соединение. Одно и тоже сетевое приложение при такой архитектуре соединения выполняется двумя сторонами клиентом и сервером по-разному.
Клиент запрашивает информацию или услугу, а сервер выдает её или отвечает на запрос. Поэтому каждое сетевое приложение состоит из двух частей клиента и сервера.
Приложения-серверы делятся на два типа: последовательный и параллельный - в зависимости от метода обработки запросов. Сервер последовательной обработки запросов обслуживает все поступающие запросы по очереди. При параллельной обработке запросов сервер создает отдельный процесс для каждого запроса. Серверы с параллельной обработкой запросов создаются, чтобы передавать файлы по сети.
Клиентская часть отвечает за предоставление пользовательского интерфейса, в процессе работы взаимодействует с сервером базы данных.
Клиентские части системы размещаются на персональных рабочих станциях. Серверная часть проекта работает в режиме ответа на запросы клиентов или определенные ресурсы. Сервер обслуживает опросы и отправляет переработанную информацию клиенту, который и отображает результат пользователю. Клиенты и серверы могут располагаться в одном адресном пространстве памяти одного компьютера или на разных машинах и обмениваться по сети. Технология клиент-сервер выросла из теории модульного программирования. Процесс клиента в классической архитектуре работает в виде пользовательского интерфейса, а процесс сервера - в качестве сервера баз данных или файл-сервера. (Файл-серверная архитектура самостоятельно)
Двухуровневая модель клиент-серверной архитектуры представляет соединение представленное на рисунке .1.
Рисунок.1. Двухуровневая модель клиент - сервер.
В случае двухуровневой архитектуры клиент общается с сервером без промежуточных звеньев. Поэтому клиенты берут на себя обязанности пользовательского интерфейса, занимаются обработкой данных, маршрутизацией запросов к программам сервера и выполняют логическую часть. Серверы принимают клиентские запросы, работают с базой данных, поддерживают целостность информации, управляют транзакциями, выполняют логическую часть и отсылают данные клиенту.
Примером такой архитектуры может быть браузер, общающийся с WEB-сервером.
В случае использования баз данных двухуровневая структура примет вид, показанный на рисунке 2.
Рисунок 2 Двухуровневая архитектура клиент-сервер с источником данных.
Недостатки такой модели - перегрузка клиентской части проблемы синхронизации приложений, затруднительны процессы размножения и модификации разработки, при этом серверная част может оставаться не полностью загруженной.
