Опубликован: 21.08.2007 | Доступ: свободный | Студентов: 1415 / 66 | Оценка: 4.23 / 3.74 | Длительность: 15:37:00
Лекция 15:

Заключение

< Лекция 14 || Лекция 15: 1234
Аннотация: В данной лекции рассматриваются тенденции современного программирования, еще не получившие языковой поддержки, такие как компонентное программирование и разработка распределенных информационных систем. Большое внимание также уделено компонентному программированию

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

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

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

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

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

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

Примеры:

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

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

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

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

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

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

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

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

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

ЭЛ/Р \equiv  ( Э1 \leftarrow П(Р) \to  Э2 )

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

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

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

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

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

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

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

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

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

< Лекция 14 || Лекция 15: 1234
Дарья Федотова
Дарья Федотова
Сергей Березовский
Сергей Березовский

В рамках проф. переподготовки по программе "Программирование"

Есть курсы, которые я уже прошел. Но войдя в курс я вижу, что они не зачтены (Язык Ассемблера и архитектура ЭВМ, Программирование на С++ для профессионалов). Это как?

Наталья Алмаева
Наталья Алмаева
Россия
Сергей Кузнецов
Сергей Кузнецов
Россия