Файл: Архитектура ис ст преподаватель.pptx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 11.01.2024

Просмотров: 57

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

Архитектура ИС

Ст.преподаватель

Кафедра ИСТ

Традиционные архитектуры информационных систем.  Файл-серверная архитектура

Потом возникла идея хранения всех общедоступных файлов на выделенном компьютере в сети - файл-сервере

Количество клиентов ограничено десятками.

Плюсы:

1. Многопользовательский режим работы с данными;

Основные особенности:

· Клиентская программа работает с данными через запросы к серверному ПО.

· Базовые функции приложения разделены между клиентом и сервером.

Плюсы:

· Полная поддержка многопользовательской работы

· Гарантия целостности данных

Минусы:

· Бизнес логика приложений осталась в клиентском ПО. При любом изменении алгоритмов, надо обновлять пользовательское ПО на каждом клиенте.

· Высокие требования к пропускной способности коммуникационных каналов с сервером, что препятствует использование клиентских станций иначе как в локальной сети.

· Слабая защита данных от взлома, в особенности от недобросовестных пользователей системы.

· Высокая сложность администрирования и настройки рабочих мест пользователей системы.

· Необходимость использовать мощные ПК на клиентских местах.

· Высокая сложность разработки системы из-за необходимости выполнять бизнес-логику и обеспечивать пользовательский интерфейс в одной программе

Использование хранимых процедур и вычисление данных на стороне сервера сокращают трафик, увеличивают безопасность. Клиент все равно реализует часть бизнес- логики.

§ 1 — браузер клиента отправляет HTTP-запрос;

Плюсы: 

Internet/Intranet – технологии

Архитектура на основе Internet/Intranet с мигрирующими программами

В литературе можно найти различные определения распределенных систем, причем ни одно из них не является удовлетворительным и не согласуется с остальными.

Для наших задач хватит достаточно вольной характеристики.

Распределенная система — это набор независимых вычислительных машин,

представляющийся их пользователям единой объединенной системой.

 В этом определении оговариваются два момента.

Первый относится к аппаратуре: все машины автономны.

Характеристики распределенных систем:

1. От пользователей скрыты различия между компьютерами и способы связи между ними. То же самое относится и к внешней организации распределенных систем.

2. Пользователи и приложения единообразно работают в распределенных системах, независимо от того, где и когда происходит их взаимодействие.

Распределенная система организована в виде службы промежуточного уровня

Особенности распределенных ИС

Ссылки

Ссылки на объекты в программных модулях на ОО языках программирования (например, С++) являются указателями в памяти.

1. Ссылки на объекты в распределенных системах в противоположность являются более комплексными:

1.1.Содержат информацию о размещении

1.2.Информацию о безопасности

1.3.Ссылки на объектные типы

2. Ссылки на распределенные объекты значительно больше (40 байт для Orbix)

Задержки выполнения запросов

Локальные вызовы требуют порядка пары сотен наносекунд

Запрос к объекту требует от 0.1 до 10 миллисекунд

Интерфейсы в распределенной системе должны быть спроектированы так, чтобы снизить время выполнения запросов:

1. Снизить частоту обращения;

2. Укрупнить выполняемые функции

Активация/Деактивация

Объекты в ОО языках находятся в виртуальной памяти от создания до уничтожения

В распределенных системах

1. Больше объектов

2. Объекты могут не использоваться на протяжении долгого времени

Реализации распределенных объектов

1. Переносятся в память при активации

2. Удаляются из памяти при деактивации

Постоянное хранение

Объекты могут иметь или не иметь состояние.

Объекты имеющие состояние должны сохранять его на постоянный носитель между:

1. Деактивацией объекта

2. Активацией объекта

Может быть достигнуто:

1. Записью в файловую систему

2. Отражением на реляционные БД

3. С помощью объектных БД

Параллельное исполнение

В нераспределенных системах исполнение в основном последовательное, иногда

конкурентное в разных нитях процессов.

Распределенные компоненты выполняются параллельно, что приводит к необходимости согласования выполнения

Отказы

Запросы в распределенных системах имеют большую вероятность отказов

Клиенты обязаны проверять факт выполнения запросов сервером

Безопасность

Безопасность в ОО приложениях может выполняться на основе контроля сеансов. При работе распределенных систем возникают вопросы безопасности:

1. Кто запрашивает выполнение операции?

2. Как мы можем удостовериться, что субъект является именно тем за кого он себя выдает?

3. Как мы примем решение предоставлять или нет субъекту право на выполнение сервиса?

4. Как мы можем неопровержимо доказать, что сервис был предоставлен?

приложения не должны уведомляться о том, что части системы заменены или починены или, что добавлены новые для поддержки дополнительных пользователей. Для того чтобы поддержать представление системы в едином виде, организация распределенных систем часто включает в себя дополнительный уровень программного обеспечения, находящийся между верхним уровнем, на котором находятся пользователи и приложения, и нижним уровнем, состоящим из операционных систем

Распределенная система организована в виде службы промежуточного уровня

  • Соответственно, такая распределенная система обычно называется системой промежуточного уровня (middleware). Отметим, что промежуточный уровень распределен среди множества компьютеров

Особенности распределенных ИС

  • Ссылки
  • Задержки выполнения запросов
  • Активация/деактивация
  • Постоянное хранение
  • Параллельное исполнение
  • Отказы
  • Безопасность

Ссылки

Ссылки на объекты в программных модулях на ОО языках программирования (например, С++) являются указателями в памяти.

1. Ссылки на объекты в распределенных системах в противоположность являются более комплексными:

1.1.Содержат информацию о размещении

1.2.Информацию о безопасности

1.3.Ссылки на объектные типы

2. Ссылки на распределенные объекты значительно больше (40 байт для Orbix)

Задержки выполнения запросов

Локальные вызовы требуют порядка пары сотен наносекунд

Запрос к объекту требует от 0.1 до 10 миллисекунд

Интерфейсы в распределенной системе должны быть спроектированы так, чтобы снизить время выполнения запросов:

1. Снизить частоту обращения;

2. Укрупнить выполняемые функции

Активация/Деактивация

Объекты в ОО языках находятся в виртуальной памяти от создания до уничтожения

В распределенных системах

1. Больше объектов

2. Объекты могут не использоваться на протяжении долгого времени

Реализации распределенных объектов

1. Переносятся в память при активации


2. Удаляются из памяти при деактивации

Постоянное хранение

Объекты могут иметь или не иметь состояние.

Объекты имеющие состояние должны сохранять его на постоянный носитель между:

1. Деактивацией объекта

2. Активацией объекта

Может быть достигнуто:

1. Записью в файловую систему

2. Отражением на реляционные БД

3. С помощью объектных БД

Параллельное исполнение

В нераспределенных системах исполнение в основном последовательное, иногда

конкурентное в разных нитях процессов.

Распределенные компоненты выполняются параллельно, что приводит к необходимости согласования выполнения

Отказы

Запросы в распределенных системах имеют большую вероятность отказов

Клиенты обязаны проверять факт выполнения запросов сервером

Безопасность

Безопасность в ОО приложениях может выполняться на основе контроля сеансов. При работе распределенных систем возникают вопросы безопасности:

1. Кто запрашивает выполнение операции?

2. Как мы можем удостовериться, что субъект является именно тем за кого он себя выдает?

3. Как мы примем решение предоставлять или нет субъекту право на выполнение сервиса?

4. Как мы можем неопровержимо доказать, что сервис был предоставлен?