Парадигмы программирования

Распределенные информационные системы


РИС представляет собой набор независимо функционирующих составляющих, выглядящих как единая система [[21]]. Специфика таких систем еще не нашла достаточно удобных языковых средств, что и обуславливает на ближайшее время одно из направлений развития парадигм программирования наряду с парадигмой компонентного программирования, которая заслуживает отдельного рассмотрения.

При обсуждении РИС обычно используют сетевые модели, отражающие взаимосвязи составляющих как связи между узлами сети. При этом характерны следующие свойства РИС:

  1. скрыты малосущественные различия и связи между узлами,
  2. поддерживается расширение сети и массштабирование числа узлов,
  3. РИС существует постоянно, хотя части РИС могут выходить из строя,
  4. определен промежуточный уровень между оборудованием и приложениями.

Примеры:

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

Типовые задачи РИС:

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

Решение таких задач сопряжено с выполнением следующих требований:

  • прозрачность доступа к данным, их местоположения, переноса и перемещения, копирования, совместного доступа к блокам данных, отказа-восстановлений процесса обработки, оперативного хранения дублей компонент, обеспечивающих бесперебойное функционарование РИС;
  • управление степенью открытости процесса разработки РИС, протокола взаимодействия компонент РИС, пользовательского интерфейса терминальных узлов РИС, информационных сервисов и технических служб;
  • интероперабельность и переносимость, гибкость и массштабируемость компонент и комплексов, образующих РИС.

Естественный подход к выполнению таких требований - определение децентрализованных алгоритмов, таких что:


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


Чаще всего РИС реализуется на базе сетевой операционной системы, обеспечивающей доступ к совместно используемым ресурсам, позволяющей скрыть сложность и неоднородность используемого обрудования. Архитектура РИС концептуально близка проблематике сетевых баз данных и трехзвенных клиетн-серверных систем, но сопряжена с рядом дополнительных условий, связанных с практикой вертикального распределения звеньев при обработке приложений на разных машинах и горизонтальной реорганизации с целью выравнивания нагрузки посредством дублирования серверов.

Элементы РИС (ЭЛ) могут быть разделены на части Э1, Э2, размещаемые в разных логических зонах Р, связанных соответствующим протоколом П(Р).

ЭЛ/Р ( Э1 П(Р) Э2 )

Этим обеспечивается то, что концепция системы не зависит от физического размещения частей.

На концептуальном уровне для РИС характерны свойства:

  1. разнородность используевых устройств,
  2. целостность (единство) системы,
  3. электронная связность,
  4. высокий уровень взаимодействия между элементами,
  5. свобода выбора конструктивных решений и их улучшения.


На уровне реализации принципиально важна надежность:

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


В настоящее время массово выполнимы требования к устройствам для реализации РИС, которые должны быть одновременно мощными (высокая пропускная способность) и недорогими (могут простаивать).

Критерии успешности разработки РИС:

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


По существу РИС - эволюционирующий объект, разработка которого имеет непрерывный характер и продолжается в период эксплуатации.По этой причине язык представления РИС должен поддерживать в полной мере средства для решения проблем разработки и эксплуатации программ, что приводит к парадигме КП.


Содержание раздела