Многоуровневая архитектура ис
Классификация архитектур информационных систем. Архитектура «файл-сервер». Многоуровневая архитектура клиент-сервер
Системы . Информационные системы и их свойства.
Система – это образующая единое целое совокупность материальных и нематериальных объектов, объединенных некоторыми общими признаками, назначенными свойствами и условиями существования.
Информационная система – это система обработки информации и соответствующие организационные ресурсы , которые обеспечивают и распространяют информацию.
Свойства системы : сложность , делимость, целостность, многообразие элементов , структурность, адаптивность , интегрируемость.
2. Этапы развития ИС:
1) 50-е гг. (статистическая обработка).
2) 60-е гг. Основные черты: техническое обеспечение ЭВМ 1-2 поколения, информационное обеспечение , массивы данных, программное обеспечение специализирующие ПО , архитектура ИС – централизованное .
3) 70-80 –е гг. Аппаратные обеспечения, микропроцессорная техника (процессорная), программное обеспечение, информационное обеспечение, базы данных, архитектуры ИС.
4) Конец 80-е . Информационное обеспечение базы данных, прикладные программы (СУБД), технические средства (ЭВМ 3-4 поколения), средства разработки ИС (персонально-локальная централизованная с сетевым доступом).
5) Современные ИС. Характеризуется интенсивными разработками с целью повышения интеллектуальности баз данных в след. Направлениях: новые модели знаний, средства оперативного анализа (OLAP) , средства поддержки ( DSS), новые формы более естественные для человека.
Классификация информационных систем.
Архитектура ИС – концепция определяющая модели, структуру, выполняемые функции, и взаимосвязь компонентов информационной системы.
Архитектура программы – это структура системы, которая включает элементы программы , видимые извне свойства этих элементов и связи между ними.
Классификация архитектур информационных систем. Архитектура «файл-сервер». Многоуровневая архитектура клиент-сервер
.1.Централизованная архитектура.
1) пользователи совместно используют дорогие ресурсы ЭВМ и дорогие периферийные устройства.
2)централизация ресурсов и оборудования облегчает обслуживание и эксплуатацию вычислительной системы
3)отсутствует необходимость администрирования рабочих мест пользователей.
1)Главным недостатком для пользователя является то, что он полностью зависит от администратора хост-ЭВМ.
Пользователь не может настроить рабочую среду под свои потребности — все используемое программное обеспечение является коллективным.
хранения данных и кода программы
обработка данных происходит исключительно на стороне клиента.
1)многопользовательский режим работы с данными
2) удобство централизованного управления доступом
3)низкая стоимость обработки
4)высокая скорость разработки
5)невысокая стоимость обновления и изменения ПО
1)Проблемы многопользовательской работы с данными( последовательный доступ, отсутствие гарантии целостности)
3)плохая возможность подключения новых клиентов
Многоуровневыйы клиент сервер
Многоуровневый клиент сервер — это разновидность архитектуры клиент сервер, в котором функция обработки данных вынесена на один или несколько серверов.
1) Клиентское ПО не нуждается в администрировании;
3) Низкие требования к скорости канала между терминалом и сервером.
1) Повышенная сложность серверной части;
2) Высокие требования к производительности серверов;
Архитектура ИС, типы архитектур.
Архитектура информационной системы – это концептуальное описание структуры, определяющее модель, выполняемые функции и взаимосвязь компонентов информационной системы.
Архитектура информационной системы предусматривает наличие трех компонентов:
3.Управление информационными системами
Различают следующие виды архитектур: файл-сервер; клиент-сервер; многоуровневая; архитектура на базе хранилища данных; Internet/Intranet.
Архитектура файл-сервер. Архитектура файл-сервер не имеет сетевого разделения компонентов диалога PS и PL и использует компьютер для функций отображения, что облегчает построение графического интерфейса. Файл-сервер только извлекает данные из файлов, так что дополнительные пользователи и приложения добавляют лишь незначительную нагрузку на центральный процессор. Каждый новый клиент добавляет вычислительную мощность к сети. Объектами разработки в файл-серверном приложении являются компоненты приложения, определяющие логику диалога PL, а также логику обработки BL и управления данными DL. Разработанное приложение реализуется либо в виде законченного загрузочного модуля, либо в виде специального кода для интерпретации. Однако такая архитектура имеет существенный недостаток: при выполнении некоторых запросов к базе данных клиенту могут передаваться большие объемы данных, загружая сеть и приводя к непредсказуемости времени реакции.
Архитектура клиент-сервер. Архитектура клиент-сервер предназначена для разрешения проблем файл-серверных приложений путем разделения компонентов приложения и размещения их там, где они будут функционировать наиболее эффективно. Особенностью архитектуры клиент-сервер является использование выделенных серверов баз данных, понимающих запросы на языке структурированных запросов SQL (Structured Query Language) и выполняющих поиск, сортировку и агрегирование информации. Отличительная черта серверов БД – наличие справочника данных, в котором записана структура БД, ограничения целостности данных, форматы и даже серверные процедуры обработки данных по вызову или по событиям в программе. Объектами разработки в таких приложениях помимо диалога и логики обработки являются, прежде всего, реляционная модель данных и связанный с ней набор SQL-операторов для типовых запросов к базе данных. Большинство конфигураций клиент-сервер использует двухуровневую модель, в которой клиент обращается к услугам сервера. Предполагается, что диалоговые компоненты PS и PL размещаются на клиенте, что позволяет обеспечить графический интерфейс. Компоненты управления данными DS и FS размещаются на сервере, а диалог (PS, PL), логика BL и DL – на клиенте. Двухуровневое определение архитектуры клиент-сервер использует именно этот вариант: приложение работает у клиента, СУБД – на сервере. Поскольку эта схема предъявляет наименьшие требования к серверу, она обладает наилучшей масштабируемостью. Однако сложные приложения, вызывающие большое взаимодействие с БД, могут жестко загрузить как клиента, так и сеть. Результаты SQL-запроса должны вернуться клиенту для обработки, потому что там находится логика принятия решения. Такая схема приводит к дополнительному усложнению администрирования приложений, разбросанных по различным клиентским узлам. Для сокращения нагрузки на сеть и упрощения администрирования приложений компонент BL можно разместить на сервере. При этом вся логика принятия решений оформляется в виде хранимых процедур и выполняется на сервере БД. Хранимая процедура – процедура с операторами SQL для доступа к БД, вызываемая по имени с передачей требуемых параметров и выполняемая на сервере БД. Хранимые процедуры могут компилироваться, что повышает скорость их выполнения и сокращает нагрузку на сервер. Создание архитектуры клиент-сервер возможно и на основе многотерминальной системы. В этом случае в многозадачной среде сервера приложений выполняются программы пользователей, а клиентские узлы вырождены и представлены терминалами. Подобная схема информационной системы характерна для UNIX.
Многоуровневая архитектура. Многоуровневая архитектура стала развитием архитектуры клиент-сервер и в своей классической форме состоит из трех уровней:
-нижний уровень представляет собой приложения клиентов, выделенные для выполнения функций и логики представлений PS и PL и имеющие программный интерфейс для вызова приложения на среднем уровне;
-средний уровень представляет собой сервер приложений, на котором выполняется прикладная логика BL и с которого логика обработки данных DL вызывает операции с базой данных DS;
-верхний уровень представляет собой удаленный специализированный сервер базы данных, выделенный для услуг обработки данных DS и файловых операций FS (без риска использования хранимых процедур).
Интернет/интранет-технологии. В развитии технологии Интернет/интранет основной акцент пока что делается на разработке инструментальных программных средств. В то же время наблюдается отсутствие развитых средств разработки приложений, работающих с базами данных. Компромиссным решением для создания удобных и простых в использовании и сопровождении информационных систем, эффективно работающих с базами данных, стало объединение Интернет/интранет-технологии с многоуровневой архитектурой. При этом структура информационного приложения приобретает следующий вид: браузер – сервер приложений – сервер баз данных – сервер динамических страниц – web-сервер. Благодаря интеграции Интернет/интранет-технологии и архитектуры клиент-сервер процесс внедрения и сопровождения корпоративной информационной системы существенно упрощается при сохранении достаточно высокой эффективности и простоты совместного использования информации.
4. Этапы развития и базовые стандарты ИС.
Основные этапы развития информационных систем:
1950-1960 гг.- формирование бумажных расчетных документов. Функции: обработка расчетных документов на электромеханических и бухгалтерских машинах. Цель: повышение скорости обработки документов, упрощение процедуры обработки счетов и расчета зарплаты
1960-1970 гг. — формирование отчетов. Функции: управление производственной информацией. Цель: ускорение процесса подготовки отчетности
1970-1980 гг.- управленческий контроль производства и реализации. Функции: поддержка принятия решений . Цель: выработка оптимального решения
1980 гг. — настоящее время управление стратегией развития предприятия. Функции: формирование информации для принятия стратегических решений. Цель: поддержка управления бизнес-стратегией
Исходным стандартом систем управления предприятием стал стандарт MRP (Material Requirements Planning), появившейся в 70-х годах. Он включает в себя планирование материалов для производства.
MRP системы базируются на планировании материалов для удовлетворения потребностей производства и включают непосредственно функциональность MRP , функциональность по описанию и планированию загрузки производственных мощностей CRP (Capacity Resources Planning) и имеют своей целью создание оптимальных условий для реализации производственного плана выпуска продукции. Основная идея MRP систем состоит в том, что любая учетная единица материалов или комплектующих, необходимых для производства изделия, должна быть в наличии в нужное время и в нужном количестве. Основным преимуществом MRP систем является формирование последовательности производственных операций с материалами и комплектующими, обеспечивающей своевременное изготовление узлов (полуфабрикатов) для реализации основного производственного плана по выпуску готовой продукции.
Следующим стандартом был MRP II (Manufacturing Resource Planning), позволяющий планировать все производственные ресурсы предприятия (сырьё, материалы, оборудование и т.д.).
ERP система в свою очередь является дальнейшим развитием системы MRP II и включает в себя планирование ресурсов предприятия для всех основных видов деятельности.
CRM-системы. Новая технология управления взаимоотношениями с клиентами позволяет существенно улучшить сервис и вовремя предложить рынку востребованный продукт. В центре внимания этих находятся именно клиенты компании, а не бизнес-процессы. Использование CRM-системы позволяет компании получать максимум возможной информации о своих клиентах и их потребностях, а также исходя из анализа этих данных строить организационную стратегию, касающуюся всех аспектов деятельности: производства, маркетинга и рекламы, продаж, обслуживания и пр. CRM позволяет отслеживать историю развития взаимоотношений компании с ее заказчиками через различные каналы (телефон, факс, веб-сайт, электронная почта, личный визит и пр.), координировать многосторонние связи с постоянными клиентами и централизованно управлять продажами и клиент-ориентированным маркетингом, в том числе через Интернет. Через такие системы можно организовать обратную связь клиента со всей компанией.
Архитектурные особенности проектирования и разработки Веб-приложений
5.1.5. Многоуровневый «клиент-сервер»
Многоуровневая архитектура клиент-сервер ( Multitier architecture) – разновидность архитектуры клиент-сервер, в которой функция обработки данных вынесена на один или несколько отдельных серверов [15]. Это позволяет разделить функции хранения, обработки и представления данных для более эффективного использования возможностей серверов и клиентов.
Среди многоуровневой архитектуры клиент-сервер наиболее распространена трехуровневая архитектура ( трехзвенная архитектура , three- tier ), предполагающая наличие следующих компонентов приложения: клиентское приложение (обычно говорят «тонкий клиент» или терминал ), подключенное к серверу приложений , который в свою очередь подключен к серверу базы данных [14, 17].
Схематически такую архитектуру можно представить, как показано на рис. 5.4.
- Терминал – это интерфейсный (обычно графический) компонент, который представляет первый уровень, собственно приложение для конечного пользователя. Первый уровень не должен иметь прямых связей с базой данных (по требованиям безопасности), быть нагруженным основной бизнес-логикой (по требованиям масштабируемости) и хранить состояние приложения (по требованиям надежности). На первый уровень может быть вынесена и обычно выносится простейшая бизнес-логика: интерфейс авторизации, алгоритмы шифрования, проверка вводимых значений на допустимость и соответствие формату, несложные операции (сортировка, группировка, подсчет значений) с данными, уже загруженными на терминал .
- Сервер приложений располагается на втором уровне. На втором уровне сосредоточена большая часть бизнес-логики. Вне его остаются фрагменты, экспортируемые на терминалы , а также погруженные в третий уровень хранимые процедуры и триггеры.
- Сервер базы данных обеспечивает хранение данных и выносится на третий уровень. Обычно это стандартная реляционная или объектно-ориентированная СУБД. Если третий уровень представляет собой базу данных вместе с хранимыми процедурами, триггерами и схемой, описывающей приложение в терминах реляционной модели, то второй уровень строится как программный интерфейс, связывающий клиентские компоненты с прикладной логикой базы данных.
В простейшей конфигурации физически сервер приложений может быть совмещен с сервером базы данных на одном компьютере, к которому по сети подключается один или несколько терминалов .
В «правильной» (с точки зрения безопасности, надежности, масштабирования) конфигурации сервер базы данных находится на выделенном компьютере (или кластере), к которому по сети подключены один или несколько серверов приложений , к которым, в свою очередь, по сети подключаются терминалы .
Плюсами данной архитектуры являются [12, 14, 16, 17]:
- клиентское ПО не нуждается в администрировании;
- масштабируемость;
- конфигурируемость – изолированность уровней друг от друга позволяет быстро и простыми средствами переконфигурировать систему при возникновении сбоев или при плановом обслуживании на одном из уровней;
- высокая безопасность;
- высокая надежность;
- низкие требования к скорости канала (сети) между терминалами и сервером приложений ;
- низкие требования к производительности и техническим характеристикам терминалов , как следствие снижение их стоимости.
- растет сложность серверной части и, как следствие, затраты на администрирование и обслуживание;
- более высокая сложность создания приложений;
- сложнее в разворачивании и администрировании;
- высокие требования к производительности серверов приложений и сервера базы данных , а, значит, и высокая стоимость серверного оборудования;
- высокие требования к скорости канала (сети) между сервером базы данных и серверами приложений .
Некоторые авторы (например, Мартин Фаулер [18]) представляют многозвенную архитектуру (трехзвенную) в виде пяти уровней (рис. 5.5):
- Представление;
- Уровень представления;
- Уровень логики;
- Уровень данных;
- Данные.
К представлению относится вся информация, непосредственно отображаемая пользователю: сгенерированные html-страницы, таблицы стилей, изображения.
Уровень представления охватывает все, что имеет отношение к общению пользователя с системой. К главным функциям слоя представления относятся отображение информации и интерпретация вводимых пользователем команд с преобразованием их в соответствующие операции в контексте логики и данных.
Уровень логики содержит основные функции системы, предназначенные для достижения поставленной перед ним цели. К таким функциям относятся вычисления на основе вводимых и хранимых данных, проверка всех элементов данных и обработка команд, поступающих от слоя представления, а также передача информации уровню данных.
Уровень доступа к данным – это подмножество функций, обеспечивающих взаимодействие со сторонними системами, которые выполняют задания в интересах приложения.
Данные системы обычно хранятся в базе данных.
5.1.6. Архитектура распределенных систем
Такой тип систем является более сложным с точки зрения организации системы. Суть распределенной системы заключается в том, чтобы хранить локальные копии важных данных [19].
Схематически такую архитектуру можно представить, как показано на рис. 5.6.
Более 95 % данных, используемых в управлении предприятием, могут быть размещены на одном персональном компьютере, обеспечив возможность его независимой работы [16]. Поток исправлений и дополнений, создаваемый на этом компьютере, ничтожен по сравнению с объемом данных, используемых при этом. Поэтому если хранить непрерывно используемые данные на самих компьютерах, и организовать обмен между ними исправлениями и дополнениями к хранящимся данным, то суммарный передаваемый трафик резко снизится. Это позволяет понизить требования к каналам связи между компьютерами и чаще использовать асинхронную связь, и благодаря этому создавать надежно функционирующие распределенные информационные системы, использующие для связи отдельных элементов неустойчивую связь типа Интернета, мобильную связь, коммерческие спутниковые каналы. А минимизация трафика между элементами сделает вполне доступной стоимость эксплуатации такой связи. Конечно, реализация такой системы не элементарна, и требует решения ряда проблем, одна из которых своевременная синхронизация данных.
Каждый АРМ независим, содержит только ту информацию, с которой должен работать, а актуальность данных во всей системе обеспечивается благодаря непрерывному обмену сообщениями с другими АРМами. Обмен сообщениями между АРМами может быть реализован различными способами, от отправки данных по электронной почте до передачи данных по сетям.
Еще одним из преимуществ такой схемы эксплуатации и архитектуры системы, является обеспечение возможности персональной ответственности за сохранность данных. Так как данные, доступные на конкретном рабочем месте, находятся только на этом компьютере, при использовании средств шифрования и личных аппаратных ключей исключается доступ к данным посторонних, в том числе и IT администраторов.
Такая архитектура системы также позволяет организовать распределенные вычисления между клиентскими машинами. Например, расчет какой-либо задачи, требующей больших вычислений, можно распределить между соседними АРМами благодаря тому, что они, как правило, обладают одной информацией в своих БД и, таким образом, добиться максимальной производительности системы.
Распределенные системы с репликацией
Данными между различными рабочими станциями и централизованным хранилищем данных , передаются репликацией [19] (рис. 5.7). При вводе информации на рабочих станциях – данные также записываются в локальную базу данных, а лишь затем синхронизируются.
Распределенные системы с элементами удаленного исполнения
Существуют определенные особенности, которые невозможно качественно реализовать на обычной распределенной системе репликативного типа. К этим особенностям можно отнести [19]:
- использование данных из сущностей, которые хранятся на удаленном сервере (узле);
- использование данных из сущностей, хранящихся на разных серверах (узлах) частично;
- использование обособленного функционала, на выделенном сервере (узле).
У каждого из описанных типов используется общий принцип: программа клиент или обращается к выделенному (удаленному) серверу непосредственно или обращается к локальной базе, которая инкапсулирует в себе обращение к удаленному серверу (рис. 5.8).
Архитектура ИС, типы архитектур. Классификация ИС
Основным критерием выбора архитектуры и инфраструктуры ИС в услових рыночной экономики является минимизация совокупной стоимости владения системой.
Из этого следуют два основных тезиса:
· в проектах построения информационных систем, для которых важен экономический эффект, необходимо выбирать архитектуру системы с минимальной совокупной стоимостью владения.
· совокупная стоимость владения ИС состоит из плановых затрат и стоимости рисков. Стоимость рисков определяется стоимостью бизнес-рисков, вероятностями технических рисков и матрицей соответствия между ними. Матрица соответствия определяется архитектурой ИС.
Термин «архитектура информационной системы» обычно довольно согласованно понимается специалистами на уровне подсознания, но при этом и определения этого понятия неоднозначны. Имеются два основных класса определений архитектур — «идеологические» и «конструктивные».
Основные идеологические определения архитектуры ИС таковы:
— Архитектура ИС — набор решений, наиболее существенным образом влияющих на совокупную стоимость владения системой;
— Архитектура ИС — набор ключевых решений, неизменных при изменении бизнес-технологии в рамках бизнес-видения.
Таким образом, архитектура ИС является логическим построением, или моделью, и влияет на совокупную стоимость владения через набор связанных с ней решений по выбору средств реализации, СУБД, операционной платформы, телекоммуникационных средств и т. п. — т. е. через то, что мы называем инфраструктурой ИС. Еще раз подчеркнем, что инфраструктура включает решения не только по программному обеспечению, но и по аппаратному комплексу и организационному обеспечению.
Архитектура ИС – концептуальное описание структуры, определяющее модель, выполняемые функции и взаимосвязь ее компонентов, которое предусматривает наличие 3 компонент:
— Информационные технологии (ИТ) – аппаратно-программная компонента информационных систем, телекоммуникации и данные, совместно обеспечивающие функционирование информационных систем и являющиеся их главной материальной основой.
— Функциональные подсистемы (ФП) – специализированные программы, обеспечивающие обработку и анализ информации для целей подготовки документов или принятия решений в конкретной функциональной области на базе информационных технологий.
— Управление информационными системами – компонента, обеспечивающая оптимальное взаимодействие информационных технологий, функциональных подсистем и связанных с ними специалистов, а также их развитие в течение всего жизненного цикла информационной системы.
Управление информационными системами предусматривает выполнение следующих функций:
Управление качеством включает в себя: разработку корпоративных стандартов информационных систем, разработку соглашения об уровне обслуживания (Service Level Agreement — SLA), контроль качества сервисов, проектов.
Управление персоналом включает в себя: обучение обслуживающего персонала, оценку эффективности деятельности персонала, планирование деятельности персонала, планирование карьеры персонала.
Управление пользователями включает в себя: обучение пользователей, техническую поддержку, организацию «горячей линии».
Управление развитием информационных систем включает в себя: планирование развития информационных систем, бюджетное планирование, планирование обновления.
Оперативное управление включает в себя: мониторинг функционирования; фиксирование, анализ и разрешение (или эскалацию) инцидентов; резервное копирование, восстановление, ремонт, регламентное обслуживание; конфигурирование, настройку, оптимизацию, управление производительностью; управление безопасностью; администрирование пользователей.
Финансовое управление включает в себя: управление бюджетом, управление закупками, управление контрактами, управление основными средствами.
Виды архитектур:
— Файл-сервер – выделенный сервер, оптимизированный для выполнения файловых операций ввода-вывода и предназначенный для хранения файлов любого типа.
— Клиент-сервер – архитектура распределенной вычислительной системы, в которой приложение делится на клиентский и серверный процессы.
— Многоуровневая – позволяет сбалансировать нагрузку на сеть и узлы системы, упрощает администрирование.
— Интернет/Интранет – комплексное объединение технологий Интернет/Интранет и многоуровневой архитектуры. Инструментальные средства дополняются развитыми средствами разработки приложений, работающих с базами данных.
Применительно к организации обычно используют понятие корпоративная архитектура (enterprise architecture), при этом выделяются следующие типы архитектур: бизнес-архитектура (Business architecture), ИТ-архитектура (Information Technology Architecture), архитектура данных (Data Architecture), архитектура приложения (Application Architecture) или программная архитектура (Software Architecture), техническая архитектура (Hardware Architecture). Совокупность данных архитектур и является архитектурой ИС (рис. 18.1).
Рис. 18.1. Архитектура информационной системы
Бизнес-архитектура, или архитектура уровня бизнес-процессов, определяет бизнес-стратегии, управление, организацию, ключевые бизнес-процессы в масштабе предприятия, причем не все бизнес-процессы реализуются средствами ИТ-технологий. Бизнес-архитектура отображается на ИТ-архитектуру.
ИТ-архитектура рассматривается в трех аспектах:
— обеспечивает достижение бизнес-целей посредством использования программной инфраструктуры, ориентированной на реализацию наиболее важных бизнес-приложений;
— среда, обеспечивающая реализацию бизнес- приложений;
— совокупность программных и аппаратных средств, составляющая информационную систему организации и включающая, в частности, базы данных и промежуточное программное обеспечение.
Архитектура данных организации включает логические и физические хранилища данных и средства управления данными. Архитектура данных должна быть поддержана ИТ-архитектурой. В современных ИТ-системах, ориентированных на работу со знаниями, иногда выделяют отдельный тип архитектуры — архитектуру знаний (Knowledge Architecture).
Программная архитектура отображает совокупность программных приложений. Программное приложение — это компьютерная программа, ориентированная на решение задач конечного пользователя. Архитектура приложения — это описание отдельного приложения, работающего в составе ИТ-системы, включая его программные интерфейсы. Архитектура приложения базируется на ИТ-архитектуре и использует сервисы, предоставляемые ИТ-архитектурой.
Техническая архитектура характеризует аппаратные средства и включает такие элементы, как процессор, память, жесткие диски, периферийные устройства, элементы для их соединения, а также сетевые средства.
Доменную архитектуру можно рассматривать как метамодель, описывающую множество решений.
Схемы классификации архитектур ИС, основанные на доменном подходе, показаны на рис. 1.2 и 1.3. На верхнем уровне выделяются два типа доменов: домены задач (Problem domains) (рис. 18.2) и домены решений (Solution Domains) (рис. 18.3).
Рис. 18.2. Классификация архитектур ИС, основанная на домене задач
Элементы архитектуры данных часто интегрируются в приложения. Ввиду многообразия ИС остановимся на их классификации. В последние годы все более широкое распространение получил доменный подход к описанию ИТ-архитектур. Под доменной архитектурой понимают эталонную модель, описывающую множество систем, которые реализуют похожую структуру, функциональность и поведение.
Рис. 18.3. Классификация архитектур ИС, основанная на домене решений
В таблице 18.2 приведены требования, предъявляемые к отдельным характеристикам рассматриваемых типов ИС.
Архитектура информационной системы
Виды архитектуры информационной системы
Любая информационная система (ИС) включает в себя три компонента:
- Управление данными;
- Бизнес-логику;
- Пользовательский интерфейс.
Данные хранятся в базах данных, а управление ими осуществляется с помощью системы управления базами данных (СУБД). Бизнес-логика определяет правила, по которым обрабатываются данные. Она реализуется набором процедур, написанных на различных языках программирования. Пользователь работает с интерфейсом, где логика работы ИС представлена в виде элементов управления – полей, кнопок, списков, таблиц и т.д.
Однако, эти три компонента в разных ИС взаимодействуют друг с другом различными способами.
Архитектурой информационной системы называется концепция, согласно которой взаимодействуют компоненты информационной системы.
Существуют следующие виды архитектур ИС:
- Локальная;
- Файл-серверная;
- Клиент-серверная;
- Трехслойная.
Локальные информационные системы
Локальные информационные системы широко использовались до появления компьютерных сетей. В этом случае все компоненты ИС располагаются на одном компьютере. Очевидным недостатком этой архитектуры является возможность работать в ИС только одному пользователю. Другие пользователи не имеют возможности получить доступ к данным даже для чтения.
Попробуй обратиться за помощью к преподавателям
Файл-серверная архитектура
С появлением компьютерных сетей возникла возможность хранить данные в файлах на выделенном специально для этой цели компьютере. Такой компьютер называется файловым сервером или просто сервером. Компьютеры пользователей соединены с сервером сетью, поэтому доступ к данным, могут получить несколько пользователей одновременно. Однако, кроме функции хранения данных и обеспечения доступа к ним, сервер никаких функций не выполняет. Приложения, обрабатывающие данные, находятся на пользовательских компьютерах.
Предположим, что в базе данных на сервере хранится список сотрудников крупного предприятия. На предприятии 1500 сотрудников и 10 подразделений. Пользователю нужно получить число сотрудников, работающих в каждом подразделении. Для решения этой задачи пользователь должен запросить данные всех 1500 сотрудников с сервера по сети, после чего на пользовательском компьютере выполнится процедура, которая осуществит подсчет сотрудников в каждом подразделении. Результатом процедуры будет 10 строк. Таким образом, чтобы получить 10 строк придется передать по сети 1500 строк.
Задай вопрос специалистам и получи
ответ уже через 15 минут!
Обработка данных на пользовательском компьютере всегда сопровождается передачей по сети большого количества «лишней» информации. Основными недостатками файл-серверной архитектуры являются:
- высокая загруженность сети и, как следствие, низкая скорость работы;
- сложность поддержания непротиворечивости данных, из-за их несогласованной обработки разными пользователями.
Клиент-серверная архитектура
До определенного момента на СУБД возлагались лишь задачи хранения данных и организации доступа к ним. С развитием технологий в состав СУБД разработчики стали включать новый компонент – процедурный язык программирования. С его помощью в СУБД стало возможным создавать процедуры для обработки данных, которые можно вызывать повторно. Такие процедуры называются хранимыми процедурами. Наличие хранимых процедур дало возможность осуществлять некоторую часть обработки данных на сервере.
Рассмотрим задачу из примера 1 в условиях клиент-серверной архитектуры. Пользователь отправит на сервер запрос, который запустит процедуру. Процедура выполнится непосредственно на сервере. Она подсчитает количество сотрудников в каждом подразделении и отправит полученные 10 строк по сети на клиентский компьютер. Таким образом, произойдет существенная экономия трафика: вместо 1500 строк будет передано по сети всего 10.
Клиент-серверная архитектура позволяет разгрузить сеть и поддерживать непротиворечивость данных за счет их централизованной обработки. Однако, языки хранимых процедур не приспособлены для полноценной реализации бизнес-логики. Поэтому бизнес-логика в клиент-серверных ИС по-прежнему реализуется на клиентских компьютерах. Такой подход имеет следующие недостатки:
- любые изменения в бизнес-логике требуют обновления на клиентском компьютере;
- клиентские компьютеры должны быть достаточно производительными;
- слабая защита данных от взломов.
Трехуровневая архитектура
Все недостатки клиент-серверной архитектуры связаны с тем, что на клиентском компьютере лежит слишком большая нагрузка, которую можно было бы перенести на сервер. Поэтому дальнейшее развитие технологий двигалось в направлении переноса нагрузки с клиентских компьютеров на сервер. В дополнение к хранимым процедурам разработчики стали использовать серверные языки программирования. Это дало возможность создавать в ИС промежуточный уровень — сервер приложений.
Сервер приложений – это комплекс программ, выполняемых на сервере и реализующих бизнес-логику ИС .
Использование сервера приложений позволяет максимально разгрузить клиентские компьютеры и сделать обработку данных еще более централизованной, что повышает скорость и надежность ИС.
Так и не нашли ответ
на свой вопрос?
Просто напиши с чем тебе
нужна помощь